general-library-union 3.0.13 → 3.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1481,7 +1481,8 @@ class UsuarioModel extends UnionModel {
1481
1481
  const environment = {
1482
1482
  production: false,
1483
1483
  crypto_secret_key: 'qwerty.123.zrtr*ty#qryt',
1484
- urlapisara: "http://186.86.125.178:9940",
1484
+ //urlapisara: "http://186.86.125.178:9940",
1485
+ urlapisara: "http://localhost:7881",
1485
1486
  codigoAplicacion: '1',
1486
1487
  nombreAplicacion: "SARA"
1487
1488
  /*urlapinucleo: "http://localhost:7878",
@@ -6906,7 +6907,7 @@ class ReportesService {
6906
6907
  return this.httpClient.post(`${this.getUrl()}/requieretoken/sarageneral/reporte/validarQuery`, query).pipe(catchError(this.handleError));
6907
6908
  }
6908
6909
  eliminarFuenteDatosConHijos(query) {
6909
- return this.httpClient.post(`${this.getUrl()}/requieretoken/sarageneral/reporte/validarQuery`, query).pipe(catchError(this.handleError));
6910
+ return this.httpClient.post(`${this.getUrl()}/requieretoken/sarageneral/reporte/eliminarFuenteDatosConHijos`, query).pipe(catchError(this.handleError));
6910
6911
  }
6911
6912
  getColumnasSql(query) {
6912
6913
  return this.httpClient.post(`${this.getUrl()}/requieretoken/sarageneral/reporte/getColumnasSql`, query).pipe(catchError(this.handleError));
@@ -14533,6 +14534,64 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImpor
14533
14534
  args: ['popupPuntoProceso']
14534
14535
  }] } });
14535
14536
 
14537
+ class PopupEditorFormulaComponent {
14538
+ translateService;
14539
+ constructor(translateService) {
14540
+ this.translateService = translateService;
14541
+ this.filters = [
14542
+ {
14543
+ field: 'filtro',
14544
+ header: this.translateService.instant('filtro'),
14545
+ matchMode: 'contains',
14546
+ },
14547
+ ];
14548
+ }
14549
+ listaLenguajes;
14550
+ filters = [];
14551
+ // private ILenguaje lenguaje ;
14552
+ formula;
14553
+ // private NodoFormula base;
14554
+ // private NodoFormula nodoActual;
14555
+ variables = [];
14556
+ visible;
14557
+ tablaGeneral;
14558
+ filtroGeneral;
14559
+ // private NodoConstante constante;
14560
+ editar(formula, destino, variables) {
14561
+ //getBean(SessionActivaBean.class).setUrlPopup("/webcommon/inc-templates/editorFormula.xhtml");
14562
+ this.formula = formula;
14563
+ //setDestino(destino);
14564
+ this.variables = variables;
14565
+ this.mostrarPopup();
14566
+ }
14567
+ mostrarPopup() {
14568
+ this.visible = true;
14569
+ }
14570
+ ocultarPopup() {
14571
+ this.visible = false;
14572
+ }
14573
+ filtro(event, tablaPuestoTrabajo) {
14574
+ if (event?.filtro?.value != null) {
14575
+ this.tablaGeneral.filterGlobal(event.filtro.value, 'contains');
14576
+ }
14577
+ else {
14578
+ tablaPuestoTrabajo.clear();
14579
+ }
14580
+ }
14581
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: PopupEditorFormulaComponent, deps: [{ token: i7$1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
14582
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.4", type: PopupEditorFormulaComponent, isStandalone: true, selector: "app-popup-editor-formula", viewQueries: [{ propertyName: "tablaGeneral", first: true, predicate: ["tablaGeneral"], descendants: true }, { propertyName: "filtroGeneral", first: true, predicate: ["filtroGeneral"], descendants: true }], ngImport: i0, template: "<p-dialog header=\"{{'atributo' | translate}}s\" [(visible)]=\"visible\" appendTo=\"body\" [style]=\"{width: '47vw'}\"\r\n (onHide)=\"ocultarPopup()\" [modal]=\"true\" [draggable]=\"false\" [resizable]=\"false\">\r\n\r\n\r\n <div class=\"flex justify-content-between align-items-center mt-2 mb-3\">\r\n <app-filtro-general #filtroGeneral [filtros]=\"filters\" (metodoRegresar)=\"filtro($event,tablaGeneral)\">\r\n <ng-template let-form>\r\n <ng-container [formGroup]=\"form\">\r\n <div class=\"flex mt-3\">\r\n <div class=\"mr-3 w-full\">\r\n <span class=\"p-float-label\">\r\n <input pInputText type=\"text\" id=\"filtro\" formControlName=\"filtro\"\r\n autocomplete=\"off\" />\r\n <label for=\"filtro\"> {{'atributo' | translate}}</label>\r\n </span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </app-filtro-general>\r\n </div>\r\n <p-table #tablaGeneral styleClass=\"p-datatable-striped input-helper-datatable\"\r\n [globalFilterFields]=\"['nombre']\"\r\n [value]=\"variables\" [rows]=\"10\" [paginator]=\"variables.length > 10\" [totalRecords]=\"variables.length\"\r\n [showCurrentPageReport]=\"true\" currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\">\r\n <ng-template pTemplate=\"header\">\r\n <tr style=\"width: 100%;\">\r\n <th style=\"width: 100%;\">{{'nombre' | translate}} {{'atributo' | translate}}</th>\r\n </tr>\r\n <th></th>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-objeto>\r\n <tr [pSelectableRow]=\"objeto\" style=\"width: 100%;\">\r\n <td style=\"width: 100%;\">{{objeto.nombre}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"1\">{{'mensajetablavacia' | translate}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n</p-dialog>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: DialogModule }, { kind: "component", type: i12$1.Dialog, selector: "p-dialog", inputs: ["header", "draggable", "resizable", "positionLeft", "positionTop", "contentStyle", "contentStyleClass", "modal", "closeOnEscape", "dismissableMask", "rtl", "closable", "responsive", "appendTo", "breakpoints", "styleClass", "maskStyleClass", "maskStyle", "showHeader", "breakpoint", "blockScroll", "autoZIndex", "baseZIndex", "minX", "minY", "focusOnShow", "maximizable", "keepInViewport", "focusTrap", "transitionOptions", "closeIcon", "closeAriaLabel", "closeTabindex", "minimizeIcon", "maximizeIcon", "visible", "style", "position"], outputs: ["onShow", "onHide", "visibleChange", "onResizeInit", "onResizeEnd", "onDragEnd", "onMaximize"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i17.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i17.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i14$1.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }, { kind: "component", type: FiltroGeneralComponent, selector: "app-filtro-general", inputs: ["filtros", "datatable"], outputs: ["metodoRegresar", "metodoRegresarAdicional"] }] });
14583
+ }
14584
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: PopupEditorFormulaComponent, decorators: [{
14585
+ type: Component,
14586
+ args: [{ selector: 'app-popup-editor-formula', standalone: true, imports: [DialogModule, TableModule, PrimeTemplate, FormsModule, ReactiveFormsModule, InputTextModule, TranslateModule, FiltroGeneralComponent], template: "<p-dialog header=\"{{'atributo' | translate}}s\" [(visible)]=\"visible\" appendTo=\"body\" [style]=\"{width: '47vw'}\"\r\n (onHide)=\"ocultarPopup()\" [modal]=\"true\" [draggable]=\"false\" [resizable]=\"false\">\r\n\r\n\r\n <div class=\"flex justify-content-between align-items-center mt-2 mb-3\">\r\n <app-filtro-general #filtroGeneral [filtros]=\"filters\" (metodoRegresar)=\"filtro($event,tablaGeneral)\">\r\n <ng-template let-form>\r\n <ng-container [formGroup]=\"form\">\r\n <div class=\"flex mt-3\">\r\n <div class=\"mr-3 w-full\">\r\n <span class=\"p-float-label\">\r\n <input pInputText type=\"text\" id=\"filtro\" formControlName=\"filtro\"\r\n autocomplete=\"off\" />\r\n <label for=\"filtro\"> {{'atributo' | translate}}</label>\r\n </span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </ng-template>\r\n </app-filtro-general>\r\n </div>\r\n <p-table #tablaGeneral styleClass=\"p-datatable-striped input-helper-datatable\"\r\n [globalFilterFields]=\"['nombre']\"\r\n [value]=\"variables\" [rows]=\"10\" [paginator]=\"variables.length > 10\" [totalRecords]=\"variables.length\"\r\n [showCurrentPageReport]=\"true\" currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\">\r\n <ng-template pTemplate=\"header\">\r\n <tr style=\"width: 100%;\">\r\n <th style=\"width: 100%;\">{{'nombre' | translate}} {{'atributo' | translate}}</th>\r\n </tr>\r\n <th></th>\r\n </ng-template>\r\n\r\n <ng-template pTemplate=\"body\" let-objeto>\r\n <tr [pSelectableRow]=\"objeto\" style=\"width: 100%;\">\r\n <td style=\"width: 100%;\">{{objeto.nombre}}</td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"1\">{{'mensajetablavacia' | translate}}</td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n</p-dialog>\r\n" }]
14587
+ }], ctorParameters: () => [{ type: i7$1.TranslateService }], propDecorators: { tablaGeneral: [{
14588
+ type: ViewChild,
14589
+ args: ['tablaGeneral']
14590
+ }], filtroGeneral: [{
14591
+ type: ViewChild,
14592
+ args: ['filtroGeneral']
14593
+ }] } });
14594
+
14536
14595
  class ColumnaFuenteModel extends UnionModel {
14537
14596
  llave;
14538
14597
  fuenteDato;
@@ -14688,6 +14747,9 @@ class PopupTablasFuenteComponent {
14688
14747
  this.visible = true;
14689
14748
  }
14690
14749
  ocultarPopup() {
14750
+ this.paginadorTablas.forEach((elemento) => {
14751
+ elemento.check = false;
14752
+ });
14691
14753
  this.visible = false;
14692
14754
  }
14693
14755
  todosSeleccionados() {
@@ -14792,12 +14854,14 @@ class FuenteReporteComponent {
14792
14854
  items = [];
14793
14855
  mapaMensajes = new Map();
14794
14856
  popupTablasFuenteUI;
14857
+ popupEditorFormula;
14795
14858
  tiposDato = ReporteEntradaConstantes.tipoDato;
14796
14859
  clickGuardar;
14797
14860
  verNuevoJoin;
14798
14861
  activeIndex = 0;
14799
14862
  cargarPaso;
14800
14863
  loadingGenerar;
14864
+ errorQuery;
14801
14865
  constructor(menuService, notificationBusService, reportesSvc, generalSvc, utilsService, confirmationService, translateService, messageService, generalPipe) {
14802
14866
  this.menuService = menuService;
14803
14867
  this.notificationBusService = notificationBusService;
@@ -14810,6 +14874,7 @@ class FuenteReporteComponent {
14810
14874
  this.generalPipe = generalPipe;
14811
14875
  }
14812
14876
  ngOnInit() {
14877
+ console.log('hola');
14813
14878
  this.listaColumnas = [];
14814
14879
  this.campos = [];
14815
14880
  this.listaJoin = [];
@@ -14838,10 +14903,11 @@ class FuenteReporteComponent {
14838
14903
  async load(event) {
14839
14904
  try {
14840
14905
  this.loading = true;
14841
- this.colocarFiltro();
14842
- this.filtro.paginacionRegistroInicial = event?.first != null ? event?.first : 0,
14843
- this.filtro.paginacionRegistroFinal = event?.rows != null ? event?.rows : 10,
14844
- this.paginador = await this.reportesSvc.consultarFuenteDato(this.filtro).toPromise();
14906
+ this.filtro.paginacionRegistroInicial = event?.first != null ? event?.first : 0;
14907
+ this.filtro.paginacionRegistroFinal = event?.rows != null ? event?.rows : 10;
14908
+ this.filtro.origen = ("F");
14909
+ this.filtro.descripcion = event?.filters.descripcion?.value ? ConstantesGenerales.PORCENTAJE + event?.filters.descripcion?.value + ConstantesGenerales.PORCENTAJE : null;
14910
+ this.paginador = await this.reportesSvc.consultarFuenteDato(this.filtro).toPromise();
14845
14911
  this.paginator.totalRecords = await this.reportesSvc.cantidadFuenteDato(this.filtro).toPromise();
14846
14912
  }
14847
14913
  catch (e) {
@@ -14849,13 +14915,6 @@ class FuenteReporteComponent {
14849
14915
  }
14850
14916
  this.loading = false;
14851
14917
  }
14852
- colocarFiltro() {
14853
- this.filtro.origen = ("F");
14854
- this.filtro.descripcion = (null);
14855
- if (this.utilsService.isNotBlank(this.descripcion)) {
14856
- this.filtro.descripcion = (ConstantesGenerales.PORCENTAJE + this.descripcion + ConstantesGenerales.PORCENTAJE);
14857
- }
14858
- }
14859
14918
  limpiarCampos() {
14860
14919
  this.descripcion = null;
14861
14920
  }
@@ -14934,7 +14993,6 @@ class FuenteReporteComponent {
14934
14993
  campo.alias = col.nombre;
14935
14994
  this.camposSeleccionar.push(campo);
14936
14995
  }
14937
- console.log('camposSeleccionar', this.camposSeleccionar);
14938
14996
  }
14939
14997
  async terminarPasos() {
14940
14998
  this.loadingGenerar = true;
@@ -15004,8 +15062,10 @@ class FuenteReporteComponent {
15004
15062
  async eliminar() {
15005
15063
  this.confirmationService.confirm({
15006
15064
  target: event.target,
15007
- message: this.translateService.instant('mensaje_alerta'),
15008
- icon: 'confirmar',
15065
+ key: 'eliminar',
15066
+ message: this.generalPipe.MENSAJE_ELIMINAR_CONFIRMAR,
15067
+ acceptLabel: this.generalPipe.SI_DESC,
15068
+ header: this.translateService.instant('confirmar'),
15009
15069
  accept: () => {
15010
15070
  this.setRespuesta(true);
15011
15071
  },
@@ -15017,7 +15077,7 @@ class FuenteReporteComponent {
15017
15077
  try {
15018
15078
  if (respuesta) {
15019
15079
  this.reportesSvc.eliminarFuenteDatosConHijos(this.fuente).toPromise();
15020
- this.fuente = null;
15080
+ this.regresar();
15021
15081
  this.notificationBusService.showInfo("La fuente ha sido eliminada.");
15022
15082
  }
15023
15083
  }
@@ -15037,13 +15097,19 @@ class FuenteReporteComponent {
15037
15097
  }
15038
15098
  async validarQuery() {
15039
15099
  try {
15040
- if (this.utilsService.validarTextoSQL(this.query, true, true, 8000, true)) {
15100
+ if (this.utilsService.validarTextoSQL(this.query, true, true, 8000, true) == null) {
15041
15101
  this.reportesSvc.validarQuery(this.query);
15102
+ this.errorQuery = false;
15042
15103
  this.notificationBusService.showInfo("El query esta correcto.");
15043
15104
  }
15105
+ else {
15106
+ this.errorQuery = true;
15107
+ this.notificationBusService.showError(this.utilsService.validarTextoSQL(this.query, true, true, 8000, true));
15108
+ }
15044
15109
  }
15045
15110
  catch (e) {
15046
- //Validador.adicionarMensaje("fuenteForm:tab:query", e.getMessage());
15111
+ this.errorQuery = true;
15112
+ this.notificationBusService.showError(e);
15047
15113
  }
15048
15114
  }
15049
15115
  adicionarJoin() {
@@ -15087,7 +15153,7 @@ class FuenteReporteComponent {
15087
15153
  try {
15088
15154
  //TablaFrom tabla = (TablaFrom) ((UIParameter) ae.getComponent().findComponent("tabla")).getValue();
15089
15155
  this.tablasFrom = this.tablasFrom.filter((data) => data != ae);
15090
- this.notificationBusService.showWarning("Falta eliminar las columnas de la tabla ???");
15156
+ this.notificationBusService.showWarning(this.generalPipe.MENSAJE_ELIMINAR);
15091
15157
  }
15092
15158
  catch (e) {
15093
15159
  console.error(e);
@@ -15173,12 +15239,9 @@ class FuenteReporteComponent {
15173
15239
  try {
15174
15240
  let vars = [];
15175
15241
  for (let col of this.columnas) {
15176
- //VariableFormula
15177
- let var1;
15178
- var1.nombre = (col.reporteFuente + "." + col.nombre);
15179
- var1.tipo(col.tipoDato);
15180
- vars.push(var1);
15242
+ vars.push({ nombre: col.reporteFuente + "." + col.nombre, tipo: col.tipoDato });
15181
15243
  }
15244
+ this.popupEditorFormula.editar(this.fuente.whereAdicional, 'fuenteUI.fuente.whereAdicional', vars);
15182
15245
  //getBean(EditorFormulaUI.class).editar(fuente.getWhereAdicional(), "fuenteUI.fuente.whereAdicional", vars);
15183
15246
  }
15184
15247
  catch (e) {
@@ -15236,7 +15299,7 @@ class FuenteReporteComponent {
15236
15299
  col.fuenteDato = (this.fuente.llave);
15237
15300
  this.campos = await this.reportesSvc.consultarColumnasFuente(col).toPromise();
15238
15301
  this.actual = 0;
15239
- this.menuService.setBreadcrumb([{ label: 'Fuente Reporte', }, { label: 'Mantenimiento Fuente' }]);
15302
+ this.menuService.setBreadcrumb([{ label: 'Fuente Reporte', command: (event) => this.regresar() }, { label: 'Mantenimiento Fuente', }]);
15240
15303
  this.cargasOpciones();
15241
15304
  }
15242
15305
  catch (e) {
@@ -15248,11 +15311,11 @@ class FuenteReporteComponent {
15248
15311
  this.vistaVisualizar = 'mantenimiento';
15249
15312
  this.fuente = new FuenteDatoModel();
15250
15313
  this.fuente.origen = ("F");
15251
- this.campos = null;
15314
+ this.campos = [];
15252
15315
  this.query = null;
15253
15316
  this.tabPrincipal = 0;
15254
15317
  this.actual = 0;
15255
- this.menuService.setBreadcrumb([{ label: 'Fuente Reporte', }, { label: 'Mantenimiento Fuente' }]);
15318
+ this.menuService.setBreadcrumb([{ label: 'Fuente Reporte', command: (event) => this.regresar() }, { label: 'Mantenimiento Fuente', }]);
15256
15319
  this.cargasOpciones();
15257
15320
  }
15258
15321
  catch (e) {
@@ -15266,6 +15329,7 @@ class FuenteReporteComponent {
15266
15329
  ];
15267
15330
  }
15268
15331
  regresar() {
15332
+ console.log('hola');
15269
15333
  this.vistaVisualizar = null;
15270
15334
  this.ngOnInit();
15271
15335
  }
@@ -15294,12 +15358,16 @@ class FuenteReporteComponent {
15294
15358
  if (this.fuente.llave == null) {
15295
15359
  this.fuente.llave = (this.utilsService.generarLlave());
15296
15360
  await this.reportesSvc.insertarFuenteDato(this.fuente).toPromise();
15361
+ this.cargasOpciones();
15297
15362
  }
15298
15363
  else {
15299
15364
  await this.reportesSvc.actualizarFuenteDato(this.fuente).toPromise();
15300
15365
  }
15301
15366
  this.notificationBusService.showInfo("Los cambios han sido guardados");
15302
15367
  }
15368
+ else {
15369
+ this.notificationBusService.showError(this.generalPipe.MENSAJE_CAMPOS_OBLIGATORIOS);
15370
+ }
15303
15371
  }
15304
15372
  catch (e) {
15305
15373
  console.error(e);
@@ -15345,6 +15413,7 @@ class FuenteReporteComponent {
15345
15413
  async construirColumnas() {
15346
15414
  try {
15347
15415
  this.campos = await this.reportesSvc.getColumnasSql(this.query).toPromise();
15416
+ this.notificationBusService.showSuccess('Tabla generada satisfactoriamente.');
15348
15417
  }
15349
15418
  catch (e) {
15350
15419
  console.error(e);
@@ -15433,15 +15502,23 @@ class FuenteReporteComponent {
15433
15502
  todosSeleccionados() {
15434
15503
  return this.camposSeleccionar.every(elemento => elemento.seleccionado);
15435
15504
  }
15505
+ isQueryValido() {
15506
+ return this.utilsService.validarTextoSQL(this.query, true, true, 8000, true) == null;
15507
+ }
15436
15508
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: FuenteReporteComponent, deps: [{ token: MenuService$1 }, { token: ToastService }, { token: ReportesService }, { token: GeneralService }, { token: UtilsService }, { token: i7.ConfirmationService }, { token: i7$1.TranslateService }, { token: i7.MessageService }, { token: GeneralPipe }], target: i0.ɵɵFactoryTarget.Component });
15437
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.4", type: FuenteReporteComponent, isStandalone: true, selector: "app-fuente-reporte", providers: [MessageService, ConfirmationService], viewQueries: [{ propertyName: "popupTablasFuenteUI", first: true, predicate: ["popupTablasFuenteUI"], descendants: true }], ngImport: i0, template: "@if(vistaVisualizar == null){\r\n<h1>{{'fuente' | translate}} {{'reporte'| translate}}</h1>\r\n<div class=\"flex justify-content-between align-items-center mb-3\">\r\n <app-filtro-general [filtros]=\"filters\" [datatable]=\"tablaGeneral\">\r\n <ng-template let-form>\r\n <ng-container [formGroup]=\"form\">\r\n <span class=\"p-float-label\">\r\n <input pInputText autofocus type=\"text\" id=\"descripcion\" formControlName=\"descripcion\"\r\n autocomplete=\"off\" />\r\n <label for=\"descripcion\">{{'filtro' | translate}}</label>\r\n </span>\r\n </ng-container>\r\n </ng-template>\r\n </app-filtro-general>\r\n <button pButton label=\"{{'link_nuevo' | translate}}\" (click)=\"nuevo()\" icon=\"pi pi-plus\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\r\n</div>\r\n<app-tabla-general #tablaGeneral [columns]=\"columns\" [value]=\"paginador\" [rows]=\"paginator.rows\"\r\n [totalRecords]=\"paginator.totalRecords\" (onLoad)=\"load($event)\" (onRowSelect)=\"verDetalle($event)\"\r\n [loading]=\"loading\"></app-tabla-general>\r\n}\r\n@if(vistaVisualizar != null){\r\n<div class=\"flex justify-content-between align-items-center mb-3\">\r\n <h1>{{'fuente' | translate}} {{'reporte'| translate}}</h1>\r\n <button pButton pRipple (click)=\"regresar()\" label=\"Regresar\" icon=\"pi pi-chevron-left\"\r\n class=\"p-button-text font-semibold\"></button>\r\n</div>\r\n<p-tabView [(activeIndex)]=\"tabPrincipal\">\r\n <p-tabPanel header=\"{{ 'fuente'| translate}}\">\r\n <div class=\"card\">\r\n <div class=\"mt-4\">\r\n <h5><i class=\"glyphicons glyphicons-book\"></i>{{'datos'| translate}} {{'basicos'| translate}}</h5>\r\n </div>\r\n\r\n <div class=\"p-fluid p-formgrid grid\">\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <input pInputText autofocus type=\"text\" id=\"peso\" [(ngModel)]=\"fuente.descripcion\"\r\n autocomplete=\"off\" />\r\n <label for=\"peso\">{{'nombre' | translate}}</label>\r\n </span>\r\n </div>\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea [(ngModel)]=\"query\"\r\n autofocus [autoResize]=\"true\"> </textarea>\r\n <label for=\"descripcion\">{{'consulta' | translate}}\r\n </label>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\" icon=\"glyphicons glyphicons-floppy-save\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardar()\">\r\n </button>\r\n <p-splitButton class=\"ml-2\" label=\"Acciones Fuente\" icon=\"glyphicons glyphicons-list\"\r\n [model]=\"menu\"></p-splitButton>\r\n </div>\r\n </div>\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-secondary\" icon=\"glyphicons glyphicons-floppy-save\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardarCampos()\">\r\n </button>\r\n </div>\r\n\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"campos\" [scrollable]=\"true\"\r\n [totalRecords]=\"campos.length\" [paginator]=\"camposSeleccionar.length > 10\" [rows]=\"10\"\r\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\" scrollDirection=\"horizontal\"\r\n styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"llaveTabla\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'nombre' | translate}}</th>\r\n <th style=\"width:25%\">{{'sintaxis' | translate}}</th>\r\n <th style=\"width:25%\">{{'tipo' | translate}} de {{'dato' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-campo let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"campo\">\r\n <td style=\"width:25%\">\r\n <input pInputText type=\"text\" [(ngModel)]=\"campo.nombre \" class=\"w-full\">\r\n </td>\r\n <td style=\"width:25%\">\r\n {{campo.tipoDato}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{campo.tipoDato}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </p-tabPanel>\r\n\r\n\r\n <p-tabPanel header=\"{{ 'wizard'| translate}}\">\r\n <p-steps [model]=\"items\" [readonly]=\"false\" [activeIndex]=\"actual\"></p-steps>\r\n\r\n <div class=\"cardInstrucciones mt-4 mb-3\" style=\"margin-bottom: 0px !important;\">\r\n <div class=\"flex align-items-center justify-content-between\">\r\n <div class=\"flex\">\r\n <div class=\"icono\">\r\n <i class=\"pi pi-bell\"></i>\r\n </div>\r\n <div class=\"contenedor\" style=\"margin-top: 2%;\">\r\n <label>{{mapaMensajes?.get(actual)}}</label>\r\n </div>\r\n </div>\r\n <div class=\"flex align-items-center justify-content-end\">\r\n <p-button (onClick)=\"anterior()\" [rounded]=\"true\" icon=\"pi pi-angle-left\" class=\"p-button-outlined\"\r\n pTooltip=\"Anterior\" tooltipPosition=\"top\" placeholder=\"Top\"\r\n [outlined]=\"true\" [disabled]=\"actual <= 0\" />\r\n <p-button (onClick)=\"siguiente()\" [rounded]=\"true\" icon=\"pi pi-angle-right\" class=\"p-button-outlined\"\r\n [outlined]=\"true\" *ngIf=\"actual != 3\"\r\n [pTooltip]=\"actual === 3 ? 'Terminar': 'Siguiente'\" tooltipPosition=\"top\" placeholder=\"Top\" />\r\n\r\n <button pButton label=\"{{'terminar' | translate}}\" icon=\"pi pi-angle-right\" (click)=\"siguiente()\"\r\n *ngIf=\"actual === 3\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary p-2 ml-2\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n <p-progressBar mode=\"indeterminate\" [style]=\"{ height: '3px' }\" *ngIf=\"cargarPaso\" />\r\n\r\n <div class=\"mt-2\" *ngIf=\"!cargarPaso\">\r\n @if(actual === 0){\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton label=\"{{'fuente' | translate}}\" icon=\"pi pi-plus\" (click)=\"buscarTabla()\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2 mt-3\"></button>\r\n </div>\r\n <div>\r\n\r\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"tablasFrom\" [scrollable]=\"true\"\r\n [totalRecords]=\"tablasFrom.length\" scrollDirection=\"both\" scrollDirection=\"horizontal\"\r\n responsiveLayout=\"scroll\" scrollDirection=\"horizontal\" [paginator]=\"tablasFrom.length > 10\"\r\n [rows]=\"10\" [rowsPerPageOptions]=\"[10, 20, 30]\" styleClass=\"p-datatable-striped\"\r\n [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'alias' | translate}}</th>\r\n <th style=\"width:25%\"> </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"tabla\">\r\n <td style=\"width:25%\">\r\n {{tabla.tabla}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.alias}}\r\n </td>\r\n <td class=\"flex justify-content-end\">\r\n <div>\r\n <!-- ELIMINAR -->\r\n <button pButton pRipple type=\"button\" pDeleteEditableRow icon=\"pi pi-trash\"\r\n (click)=\"eliminarTabla(tabla)\"\r\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </div>\r\n\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n }\r\n @if(actual == 1){\r\n <div class=\"mt-3\">\r\n <h4>{{'foranea'| translate}}</h4>\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"foraneas\" [scrollable]=\"true\"\r\n selectionMode=\"single\" scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\r\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\r\n editMode=\"row\" (onRowSelect)=\"adicionarForanea($event)\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"true\" dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'campo' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pSelectableRow]=\"tabla\">\r\n <td style=\"width:25%\">\r\n {{tabla.alias1}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.alias2}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.llave.nombre}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n \r\n <div class=\"card mt-3\">\r\n <div class=\"tabla-planta-personal\"\r\n style=\"padding: 0% !important;background: transparent !important;height: auto !important;\">\r\n <div class=\"flex justify-content-between align-items-center mb-2 mt-2\">\r\n <h4>{{'join'| translate}}</h4>\r\n <button pButton label=\"{{'agregar' | translate}} {{'join' | translate}}\" (click)=\"nuevoJoin()\"\r\n icon=\"pi pi-plus\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\r\n </div>\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"joinsFrom\" [scrollable]=\"true\"\r\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\r\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\r\n editMode=\"row\" currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\"\r\n [lazy]=\"true\" dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:45%\">{{'campo' | translate}} 1</th>\r\n <th style=\"width:5%\">{{'=' | translate}}</th>\r\n <th style=\"width:45%\">{{'campo' | translate}} 2</th>\r\n <th>{{'' | translate}}</th>\r\n </tr>\r\n <tr class=\" TablaNuevoRegistro\" *ngIf=\"verNuevoJoin\">\r\n <td style=\"width:45%\">\r\n <p-dropdown [options]=\"listaColumnas\" optionValue=\"value\" [(ngModel)]=\"col1\"\r\n appendTo=\"body\" [autoZIndex]=\"false\" [autoDisplayFirst]=\"false\"\r\n optionLabel=\"label\" (onChange)=\"cambioJoin($event)\"></p-dropdown>\r\n </td>\r\n <td style=\"width:5%\">=</td>\r\n <td style=\"width:45%\">\r\n <p-dropdown [options]=\"listaJoin\" optionValue=\"value\" [(ngModel)]=\"col2\"\r\n appendTo=\"body\" [autoZIndex]=\"false\" [autoDisplayFirst]=\"false\"\r\n optionLabel=\"label\"></p-dropdown>\r\n </td>\r\n\r\n <td class=\"flex justify-content-end\">\r\n <button pButton pRipple type=\"button\" icon=\"pi pi-check\" (click)=\"adicionarJoin()\"\r\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n <button pButton pRipple type=\"button\" (click)=\"cancelarNuevoJoin()\"\r\n icon=\"pi pi-times\"\r\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"tabla\">\r\n <td style=\"width:45%\">\r\n {{tabla.columna1}}\r\n </td>\r\n <td style=\"width:5%\">\r\n {{'='}}\r\n </td>\r\n <td style=\"width:45%\">\r\n {{tabla.columna2}}\r\n </td>\r\n <td>\r\n <button pButton pRipple type=\"button\" pDeleteEditableRow icon=\"pi pi-trash\"\r\n (click)=\"eliminarJoin(tabla)\"\r\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n }\r\n @if(actual == 2){\r\n\r\n <div class=\"card\">\r\n <div class=\"mt-4\">\r\n <h5><i class=\"glyphicons glyphicons-book\"></i>{{'where'| translate}}</h5>\r\n </div>\r\n\r\n <div class=\"p-fluid p-formgrid grid\">\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea\r\n [(ngModel)]=\"fuente.whereAdicional\" autofocus [autoResize]=\"true\"> </textarea>\r\n <label for=\"descripcion\">{{'consulta' | translate}}\r\n </label>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n <!-- <div class=\"flex justify-content-end\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\"\r\n icon=\"glyphicons glyphicons-floppy-save\" label=\"{{'link_guardar' | translate}}\"\r\n (click)=\"editarWhere()\">\r\n </button>\r\n </div> -->\r\n </div>\r\n\r\n }\r\n @if(actual == 3){\r\n <div class=\"mt-3\">\r\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"camposSeleccionar\" [scrollable]=\"true\"\r\n [totalRecords]=\"camposSeleccionar.length\" scrollDirection=\"both\" scrollDirection=\"horizontal\"\r\n responsiveLayout=\"scroll\" scrollDirection=\"horizontal\" [paginator]=\"camposSeleccionar.length > 10\"\r\n [rows]=\"10\" [rowsPerPageOptions]=\"[10, 20, 30]\" styleClass=\"p-datatable-striped\"\r\n [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"alias\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\" alignFrozen=\"left\" pFrozenColumn>\r\n <p-checkbox [style]=\"{'margin-left': '1%','margin-right':'1%'}\"\r\n [(ngModel)]=\"seleccionGeneral\" [binary]=\"true\" [ngModel]=\"todosSeleccionados()\"\r\n (ngModelChange)=\"actualizarSeleccion($event)\"></p-checkbox>\r\n <span style=\"margin-left:1%\">{{'tabla' | translate}}</span>\r\n </th>\r\n <th style=\"width:25%\">{{'columna' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla>\r\n <tr>\r\n <td style=\"width:25%\">\r\n <p-checkbox class=\"mr-2 \" [(ngModel)]=\"tabla.seleccionado\" [binary]=\"true\"\r\n inputId=\"binary\">\r\n </p-checkbox>\r\n {{tabla.columna.reporteFuente}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.columna.nombre}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n }\r\n </div>\r\n </p-tabPanel>\r\n</p-tabView>\r\n\r\n}\r\n\r\n<app-popup-tablas-fuente #popupTablasFuenteUI\r\n (aplicarDestinoOcultar)=\"setTablaSeleccionada($event)\"></app-popup-tablas-fuente>", styles: [":host ::ng-deep .botonCircular{background:var(--color-85);border:solid 1px var(--color-85);color:var(--color-400)}\n"], dependencies: [{ kind: "ngmodule", type: ProgressBarModule }, { kind: "component", type: i9$1.ProgressBar, selector: "p-progressBar", inputs: ["value", "showValue", "styleClass", "style", "unit", "mode", "color"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i7$3.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "autofocus", "trueValue", "falseValue", "variant"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: PopupTablasFuenteComponent, selector: "app-popup-tablas-fuente", outputs: ["aplicarDestinoOcultar"] }, { kind: "ngmodule", type: StepsModule }, { kind: "component", type: i12$3.Steps, selector: "p-steps", inputs: ["activeIndex", "model", "readonly", "style", "styleClass", "exact"], outputs: ["activeIndexChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TabViewModule }, { kind: "component", type: i17$2.TabView, selector: "p-tabView", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i17$2.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "ngmodule", type: SplitButtonModule }, { kind: "component", type: i15$1.SplitButton, selector: "p-splitButton", inputs: ["model", "severity", "raised", "rounded", "text", "outlined", "size", "plain", "icon", "iconPos", "label", "tooltip", "tooltipOptions", "style", "styleClass", "menuStyle", "menuStyleClass", "appendTo", "dir", "expandAriaLabel", "showTransitionOptions", "hideTransitionOptions", "buttonProps", "menuButtonProps", "autofocus", "disabled", "tabindex", "menuButtonDisabled", "buttonDisabled"], outputs: ["onClick", "onMenuHide", "onMenuShow", "onDropdownClick"] }, { kind: "directive", type: i10$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i10$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i14$1.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "ngmodule", type: AccordionModule }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i11.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i17.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i17.FrozenColumn, selector: "[pFrozenColumn]", inputs: ["frozen", "alignFrozen"] }, { kind: "directive", type: i17.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "directive", type: i17.EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "component", type: TablaGeneralComponent, selector: "app-tabla-general", inputs: ["dataKey", "value", "columns", "rows", "totalRecords", "loading", "ocultarFraccionador"], outputs: ["onLoad", "onRowSelect"] }, { kind: "component", type: FiltroGeneralComponent, selector: "app-filtro-general", inputs: ["filtros", "datatable"], outputs: ["metodoRegresar", "metodoRegresarAdicional"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: InputTextareaModule }, { kind: "directive", type: i16.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize", "variant"], outputs: ["onResize"] }, { kind: "ngmodule", type: ConfirmPopupModule }] });
15509
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.4", type: FuenteReporteComponent, isStandalone: true, selector: "app-fuente-reporte", providers: [MessageService, ConfirmationService], viewQueries: [{ propertyName: "popupTablasFuenteUI", first: true, predicate: ["popupTablasFuenteUI"], descendants: true }, { propertyName: "popupEditorFormula", first: true, predicate: ["popupEditorFormula"], descendants: true }], ngImport: i0, template: "<p-confirmDialog #cd key=\"eliminar\">\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"mt-3\">\r\n <button type=\"button\"\r\n class=\"p-button-outlined-button-secondary p-button-outlined p-button p-component\" pButton\r\n icon=\"pi pi-times\" label=\"No\" (click)=\"cd.reject()\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-check\" label=\"Si\" class=\"p-button-raised\"\r\n (click)=\"cd.accept()\"></button>\r\n </div>\r\n </ng-template>\r\n</p-confirmDialog>\r\n@if(vistaVisualizar == null){\r\n<h1>{{'fuente' | translate}} {{'reporte'| translate}}</h1>\r\n<div class=\"flex justify-content-between align-items-center mb-3\">\r\n <app-filtro-general [filtros]=\"filters\" [datatable]=\"tablaGeneral\">\r\n <ng-template let-form>\r\n <ng-container [formGroup]=\"form\">\r\n <span class=\"p-float-label\">\r\n <input pInputText autofocus type=\"text\" id=\"descripcion\" formControlName=\"descripcion\"\r\n autocomplete=\"off\" />\r\n <label for=\"descripcion\">{{'filtro' | translate}}</label>\r\n </span>\r\n </ng-container>\r\n </ng-template>\r\n </app-filtro-general>\r\n <button pButton label=\"{{'link_nuevo' | translate}}\" (click)=\"nuevo()\" icon=\"pi pi-plus\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\r\n</div>\r\n<app-tabla-general #tablaGeneral [columns]=\"columns\" [value]=\"paginador\" [rows]=\"paginator.rows\"\r\n [totalRecords]=\"paginator.totalRecords\" (onLoad)=\"load($event)\" (onRowSelect)=\"verDetalle($event)\"\r\n [loading]=\"loading\"></app-tabla-general>\r\n}\r\n@if(vistaVisualizar != null){\r\n<div class=\"flex justify-content-between align-items-center mb-3\">\r\n <h1>{{'fuente' | translate}} {{'reporte'| translate}}</h1>\r\n <button pButton pRipple (click)=\"regresar()\" label=\"Regresar\" icon=\"pi pi-chevron-left\"\r\n class=\"p-button-text font-semibold\"></button>\r\n</div>\r\n<p-tabView [(activeIndex)]=\"tabPrincipal\">\r\n <p-tabPanel header=\"{{ 'fuente'| translate}}\">\r\n <div class=\"card\">\r\n <div class=\"mt-4\">\r\n <h5><i class=\"glyphicons glyphicons-book\"></i>{{'datos'| translate}} {{'basicos'| translate}}</h5>\r\n </div>\r\n\r\n <div class=\"p-fluid p-formgrid grid\">\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <input pInputText autofocus type=\"text\" id=\"peso\" [(ngModel)]=\"fuente.descripcion\"\r\n [class.ng-dirty]=\"(!utilsService.validarCampoObligatorio(fuente.descripcion) && clickGuardar)\"\r\n [class.ng-invalid]=\"(!utilsService.validarCampoObligatorio(fuente.descripcion) && clickGuardar)\"\r\n autocomplete=\"off\" />\r\n <label for=\"peso\">{{'nombre' | translate}}</label>\r\n </span>\r\n </div>\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea [(ngModel)]=\"query\"\r\n [class.ng-dirty]=\"((!isQueryValido() && clickGuardar) || errorQuery)\"\r\n [class.ng-invalid]=\"((!isQueryValido() && clickGuardar) || errorQuery)\"\r\n autofocus [autoResize]=\"true\"> </textarea>\r\n <label for=\"descripcion\">{{'consulta' | translate}}\r\n </label>\r\n </span>\r\n </div>\r\n \r\n </div>\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\" icon=\"glyphicons glyphicons-floppy-save\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardar()\">\r\n </button> \r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\" icon=\"glyphicons glyphicons-floppy-save\" *ngIf=\"\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardar()\">\r\n </button>\r\n <p-splitButton class=\"ml-2\" label=\"Acciones Fuente\" icon=\"glyphicons glyphicons-list\"\r\n [model]=\"menu\"></p-splitButton>\r\n </div>\r\n </div>\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-secondary\" icon=\"glyphicons glyphicons-floppy-save\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardarCampos()\">\r\n </button>\r\n </div>\r\n\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"campos\" [scrollable]=\"true\"\r\n [totalRecords]=\"campos.length\" [paginator]=\"campos.length > 10\" [rows]=\"10\"\r\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\" scrollDirection=\"horizontal\"\r\n styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"llaveTabla\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'nombre' | translate}}</th>\r\n <th style=\"width:25%\">{{'sintaxis' | translate}}</th>\r\n <th style=\"width:25%\">{{'tipo' | translate}} de {{'dato' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-campo let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"campo\">\r\n <td style=\"width:25%\">\r\n <input pInputText type=\"text\" [(ngModel)]=\"campo.nombre \" class=\"w-full\">\r\n </td>\r\n <td style=\"width:25%\">\r\n {{campo.tipoDato}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{campo.tipoDato}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </p-tabPanel>\r\n\r\n\r\n <p-tabPanel header=\"{{ 'wizard'| translate}}\">\r\n <p-steps [model]=\"items\" [readonly]=\"false\" [activeIndex]=\"actual\"></p-steps>\r\n\r\n <div class=\"cardInstrucciones mt-4 mb-3\" style=\"margin-bottom: 0px !important;\">\r\n <div class=\"flex align-items-center justify-content-between\">\r\n <div class=\"flex\">\r\n <div class=\"icono\">\r\n <i class=\"pi pi-bell\"></i>\r\n </div>\r\n <div class=\"contenedor\" style=\"margin-top: 2%;\">\r\n <label>{{mapaMensajes?.get(actual)}}</label>\r\n </div>\r\n </div>\r\n <div class=\"flex align-items-center justify-content-end\">\r\n <p-button (onClick)=\"anterior()\" [rounded]=\"true\" icon=\"pi pi-angle-left\" class=\"p-button-outlined\"\r\n pTooltip=\"Anterior\" tooltipPosition=\"top\" placeholder=\"Top\"\r\n [outlined]=\"true\" [disabled]=\"actual <= 0\" />\r\n <p-button (onClick)=\"siguiente()\" [rounded]=\"true\" icon=\"pi pi-angle-right\" class=\"p-button-outlined\"\r\n [outlined]=\"true\" *ngIf=\"actual != 3\"\r\n [pTooltip]=\"actual === 3 ? 'Terminar': 'Siguiente'\" tooltipPosition=\"top\" placeholder=\"Top\" />\r\n\r\n <button pButton label=\"{{'terminar' | translate}}\" icon=\"pi pi-angle-right\" (click)=\"siguiente()\"\r\n *ngIf=\"actual === 3\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary p-2 ml-2\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n <p-progressBar mode=\"indeterminate\" [style]=\"{ height: '3px' }\" *ngIf=\"cargarPaso\" />\r\n\r\n <div class=\"mt-2\" *ngIf=\"!cargarPaso\">\r\n @if(actual === 0){\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton label=\"{{'fuente' | translate}}\" icon=\"pi pi-plus\" (click)=\"buscarTabla()\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2 mt-3\"></button>\r\n </div>\r\n <div>\r\n\r\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"tablasFrom\" [scrollable]=\"true\"\r\n [totalRecords]=\"tablasFrom.length\" scrollDirection=\"both\" scrollDirection=\"horizontal\"\r\n responsiveLayout=\"scroll\" scrollDirection=\"horizontal\" [paginator]=\"tablasFrom.length > 10\"\r\n [rows]=\"10\" [rowsPerPageOptions]=\"[10, 20, 30]\" styleClass=\"p-datatable-striped\"\r\n [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'alias' | translate}}</th>\r\n <th style=\"width:25%\"> </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"tabla\">\r\n <td style=\"width:25%\">\r\n {{tabla.tabla}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.alias}}\r\n </td>\r\n <td class=\"flex justify-content-end\">\r\n <div>\r\n <!-- ELIMINAR -->\r\n <button pButton pRipple type=\"button\" pDeleteEditableRow icon=\"pi pi-trash\"\r\n (click)=\"eliminarTabla(tabla)\"\r\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </div>\r\n\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n }\r\n @if(actual == 1){\r\n <div class=\"mt-3\">\r\n <h4>{{'foranea'| translate}}</h4>\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"foraneas\" [scrollable]=\"true\"\r\n selectionMode=\"single\" scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\r\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\r\n editMode=\"row\" (onRowSelect)=\"adicionarForanea($event)\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"true\" dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'campo' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pSelectableRow]=\"tabla\">\r\n <td style=\"width:25%\">\r\n {{tabla.alias1}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.alias2}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.llave.nombre}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n \r\n <div class=\"card mt-3\">\r\n <div class=\"tabla-planta-personal\"\r\n style=\"padding: 0% !important;background: transparent !important;height: auto !important;\">\r\n <div class=\"flex justify-content-between align-items-center mb-2 mt-2\">\r\n <h4>{{'join'| translate}}</h4>\r\n <button pButton label=\"{{'agregar' | translate}} {{'join' | translate}}\" (click)=\"nuevoJoin()\"\r\n icon=\"pi pi-plus\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\r\n </div>\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"joinsFrom\" [scrollable]=\"true\"\r\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\r\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\r\n editMode=\"row\" currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\"\r\n [lazy]=\"true\" dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:45%\">{{'campo' | translate}} 1</th>\r\n <th style=\"width:5%\">{{'=' | translate}}</th>\r\n <th style=\"width:45%\">{{'campo' | translate}} 2</th>\r\n <th>{{'' | translate}}</th>\r\n </tr>\r\n <tr class=\" TablaNuevoRegistro\" *ngIf=\"verNuevoJoin\">\r\n <td style=\"width:45%\">\r\n <p-dropdown [options]=\"listaColumnas\" optionValue=\"value\" [(ngModel)]=\"col1\"\r\n appendTo=\"body\" [autoZIndex]=\"false\" [autoDisplayFirst]=\"false\"\r\n optionLabel=\"label\" (onChange)=\"cambioJoin($event)\"></p-dropdown>\r\n </td>\r\n <td style=\"width:5%\">=</td>\r\n <td style=\"width:45%\">\r\n <p-dropdown [options]=\"listaJoin\" optionValue=\"value\" [(ngModel)]=\"col2\"\r\n appendTo=\"body\" [autoZIndex]=\"false\" [autoDisplayFirst]=\"false\"\r\n optionLabel=\"label\"></p-dropdown>\r\n </td>\r\n\r\n <td class=\"flex justify-content-end\">\r\n <button pButton pRipple type=\"button\" icon=\"pi pi-check\" (click)=\"adicionarJoin()\"\r\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n <button pButton pRipple type=\"button\" (click)=\"cancelarNuevoJoin()\"\r\n icon=\"pi pi-times\"\r\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"tabla\">\r\n <td style=\"width:45%\">\r\n {{tabla.columna1}}\r\n </td>\r\n <td style=\"width:5%\">\r\n {{'='}}\r\n </td>\r\n <td style=\"width:45%\">\r\n {{tabla.columna2}}\r\n </td>\r\n <td>\r\n <button pButton pRipple type=\"button\" pDeleteEditableRow icon=\"pi pi-trash\"\r\n (click)=\"eliminarJoin(tabla)\"\r\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n }\r\n @if(actual == 2){\r\n\r\n <div class=\"card\">\r\n <div class=\"mt-4\">\r\n <h5><i class=\"glyphicons glyphicons-book\"></i>{{'where'| translate}}</h5>\r\n </div>\r\n\r\n <div class=\"p-fluid p-formgrid grid\">\r\n \r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <div class=\"col-12 flex p-0\">\r\n <span class=\"p-float-label w-full\">\r\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea\r\n [(ngModel)]=\"fuente.whereAdicional\" autofocus [autoResize]=\"true\"> </textarea>\r\n <label for=\"descripcion\">{{'consulta' | translate}}\r\n </label>\r\n </span>\r\n <!-- VER ATRIBUTOS -->\r\n <button pButton pRipple class=\"m-2 mb-1 p-button p-button-rounded p-button-secondary\"\r\n icon=\"glyphicons glyphicons-justify\" (click)=\"editarWhere()\" pTooltip=\"{{'atributo' | translate}}s\"\r\n tooltipPosition=\"bottom\">\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- <div class=\"flex justify-content-end\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\"\r\n icon=\"glyphicons glyphicons-floppy-save\" label=\"{{'link_guardar' | translate}}\"\r\n (click)=\"editarWhere()\">\r\n </button>\r\n </div> -->\r\n </div>\r\n\r\n }\r\n @if(actual == 3){\r\n <div class=\"mt-3\">\r\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"camposSeleccionar\" [scrollable]=\"true\"\r\n [totalRecords]=\"camposSeleccionar.length\" scrollDirection=\"both\" scrollDirection=\"horizontal\"\r\n responsiveLayout=\"scroll\" scrollDirection=\"horizontal\" [paginator]=\"camposSeleccionar.length > 10\"\r\n [rows]=\"10\" [rowsPerPageOptions]=\"[10, 20, 30]\" styleClass=\"p-datatable-striped\"\r\n [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"alias\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\" alignFrozen=\"left\" pFrozenColumn>\r\n <p-checkbox [style]=\"{'margin-left': '1%','margin-right':'1%'}\"\r\n [(ngModel)]=\"seleccionGeneral\" [binary]=\"true\" [ngModel]=\"todosSeleccionados()\"\r\n (ngModelChange)=\"actualizarSeleccion($event)\"></p-checkbox>\r\n <span style=\"margin-left:1%\">{{'tabla' | translate}}</span>\r\n </th>\r\n <th style=\"width:25%\">{{'columna' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla>\r\n <tr>\r\n <td style=\"width:25%\">\r\n <p-checkbox class=\"mr-2 \" [(ngModel)]=\"tabla.seleccionado\" [binary]=\"true\"\r\n inputId=\"binary\">\r\n </p-checkbox>\r\n {{tabla.columna.reporteFuente}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.columna.nombre}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n }\r\n </div>\r\n </p-tabPanel>\r\n</p-tabView>\r\n\r\n}\r\n<app-popup-editor-formula #popupEditorFormula></app-popup-editor-formula>\r\n\r\n<app-popup-tablas-fuente #popupTablasFuenteUI\r\n (aplicarDestinoOcultar)=\"setTablaSeleccionada($event)\"></app-popup-tablas-fuente>", styles: [":host ::ng-deep .botonCircular{background:var(--color-85);border:solid 1px var(--color-85);color:var(--color-400)}\n"], dependencies: [{ kind: "ngmodule", type: ProgressBarModule }, { kind: "component", type: i9$1.ProgressBar, selector: "p-progressBar", inputs: ["value", "showValue", "styleClass", "style", "unit", "mode", "color"] }, { kind: "ngmodule", type: TooltipModule }, { kind: "directive", type: i3$1.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "ngmodule", type: CheckboxModule }, { kind: "component", type: i7$3.Checkbox, selector: "p-checkbox", inputs: ["value", "name", "disabled", "binary", "label", "ariaLabelledBy", "ariaLabel", "tabindex", "inputId", "style", "styleClass", "labelStyleClass", "formControl", "checkboxIcon", "readonly", "required", "autofocus", "trueValue", "falseValue", "variant"], outputs: ["onChange", "onFocus", "onBlur"] }, { kind: "directive", type: i7.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: PopupTablasFuenteComponent, selector: "app-popup-tablas-fuente", outputs: ["aplicarDestinoOcultar"] }, { kind: "ngmodule", type: StepsModule }, { kind: "component", type: i12$3.Steps, selector: "p-steps", inputs: ["activeIndex", "model", "readonly", "style", "styleClass", "exact"], outputs: ["activeIndexChange"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: TabViewModule }, { kind: "component", type: i17$2.TabView, selector: "p-tabView", inputs: ["style", "styleClass", "controlClose", "scrollable", "activeIndex", "selectOnFocus", "nextButtonAriaLabel", "prevButtonAriaLabel", "autoHideButtons", "tabindex"], outputs: ["onChange", "onClose", "activeIndexChange"] }, { kind: "component", type: i17$2.TabPanel, selector: "p-tabPanel", inputs: ["closable", "headerStyle", "headerStyleClass", "cache", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "selected", "disabled", "header", "leftIcon", "rightIcon"] }, { kind: "ngmodule", type: SplitButtonModule }, { kind: "component", type: i15$1.SplitButton, selector: "p-splitButton", inputs: ["model", "severity", "raised", "rounded", "text", "outlined", "size", "plain", "icon", "iconPos", "label", "tooltip", "tooltipOptions", "style", "styleClass", "menuStyle", "menuStyleClass", "appendTo", "dir", "expandAriaLabel", "showTransitionOptions", "hideTransitionOptions", "buttonProps", "menuButtonProps", "autofocus", "disabled", "tabindex", "menuButtonDisabled", "buttonDisabled"], outputs: ["onClick", "onMenuHide", "onMenuShow", "onDropdownClick"] }, { kind: "directive", type: i10$1.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }, { kind: "component", type: i10$1.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "raised", "rounded", "text", "plain", "severity", "outlined", "link", "tabindex", "size", "style", "styleClass", "badgeClass", "ariaLabel", "autofocus"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i7$1.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: InputTextModule }, { kind: "directive", type: i14$1.InputText, selector: "[pInputText]", inputs: ["variant"] }, { kind: "ngmodule", type: AccordionModule }, { kind: "ngmodule", type: DropdownModule }, { kind: "component", type: i11.Dropdown, selector: "p-dropdown", inputs: ["id", "scrollHeight", "filter", "name", "style", "panelStyle", "styleClass", "panelStyleClass", "readonly", "required", "editable", "appendTo", "tabindex", "placeholder", "loadingIcon", "filterPlaceholder", "filterLocale", "variant", "inputId", "dataKey", "filterBy", "filterFields", "autofocus", "resetFilterOnHide", "checkmark", "dropdownIcon", "loading", "optionLabel", "optionValue", "optionDisabled", "optionGroupLabel", "optionGroupChildren", "autoDisplayFirst", "group", "showClear", "emptyFilterMessage", "emptyMessage", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "overlayOptions", "ariaFilterLabel", "ariaLabel", "ariaLabelledBy", "filterMatchMode", "maxlength", "tooltip", "tooltipPosition", "tooltipPositionStyle", "tooltipStyleClass", "focusOnHover", "selectOnFocus", "autoOptionFocus", "autofocusFilter", "disabled", "itemSize", "autoZIndex", "baseZIndex", "showTransitionOptions", "hideTransitionOptions", "filterValue", "options"], outputs: ["onChange", "onFilter", "onFocus", "onBlur", "onClick", "onShow", "onHide", "onClear", "onLazyLoad"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: TableModule }, { kind: "component", type: i17.Table, selector: "p-table", inputs: ["frozenColumns", "frozenValue", "style", "styleClass", "tableStyle", "tableStyleClass", "paginator", "pageLinks", "rowsPerPageOptions", "alwaysShowPaginator", "paginatorPosition", "paginatorStyleClass", "paginatorDropdownAppendTo", "paginatorDropdownScrollHeight", "currentPageReportTemplate", "showCurrentPageReport", "showJumpToPageDropdown", "showJumpToPageInput", "showFirstLastIcon", "showPageLinks", "defaultSortOrder", "sortMode", "resetPageOnSort", "selectionMode", "selectionPageOnly", "contextMenuSelection", "contextMenuSelectionMode", "dataKey", "metaKeySelection", "rowSelectable", "rowTrackBy", "lazy", "lazyLoadOnInit", "compareSelectionBy", "csvSeparator", "exportFilename", "filters", "globalFilterFields", "filterDelay", "filterLocale", "expandedRowKeys", "editingRowKeys", "rowExpandMode", "scrollable", "scrollDirection", "rowGroupMode", "scrollHeight", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "virtualScrollDelay", "frozenWidth", "responsive", "contextMenu", "resizableColumns", "columnResizeMode", "reorderableColumns", "loading", "loadingIcon", "showLoader", "rowHover", "customSort", "showInitialSortBadge", "autoLayout", "exportFunction", "exportHeader", "stateKey", "stateStorage", "editMode", "groupRowsBy", "groupRowsByOrder", "responsiveLayout", "breakpoint", "paginatorLocale", "value", "columns", "first", "rows", "totalRecords", "sortField", "sortOrder", "multiSortMeta", "selection", "selectAll", "virtualRowHeight"], outputs: ["contextMenuSelectionChange", "selectAllChange", "selectionChange", "onRowSelect", "onRowUnselect", "onPage", "onSort", "onFilter", "onLazyLoad", "onRowExpand", "onRowCollapse", "onContextMenuSelect", "onColResize", "onColReorder", "onRowReorder", "onEditInit", "onEditComplete", "onEditCancel", "onHeaderCheckboxToggle", "sortFunction", "firstChange", "rowsChange", "onStateSave", "onStateRestore"] }, { kind: "directive", type: i17.FrozenColumn, selector: "[pFrozenColumn]", inputs: ["frozen", "alignFrozen"] }, { kind: "directive", type: i17.SelectableRow, selector: "[pSelectableRow]", inputs: ["pSelectableRow", "pSelectableRowIndex", "pSelectableRowDisabled"] }, { kind: "directive", type: i17.EditableRow, selector: "[pEditableRow]", inputs: ["pEditableRow", "pEditableRowDisabled"] }, { kind: "component", type: TablaGeneralComponent, selector: "app-tabla-general", inputs: ["dataKey", "value", "columns", "rows", "totalRecords", "loading", "ocultarFraccionador"], outputs: ["onLoad", "onRowSelect"] }, { kind: "component", type: FiltroGeneralComponent, selector: "app-filtro-general", inputs: ["filtros", "datatable"], outputs: ["metodoRegresar", "metodoRegresarAdicional"] }, { kind: "ngmodule", type: ButtonModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i1$1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i1$1.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }, { kind: "ngmodule", type: InputTextareaModule }, { kind: "directive", type: i16.InputTextarea, selector: "[pInputTextarea]", inputs: ["autoResize", "variant"], outputs: ["onResize"] }, { kind: "ngmodule", type: ConfirmPopupModule }, { kind: "ngmodule", type: ConfirmDialogModule }, { kind: "component", type: i6.ConfirmDialog, selector: "p-confirmDialog", inputs: ["header", "icon", "message", "style", "styleClass", "maskStyleClass", "acceptIcon", "acceptLabel", "closeAriaLabel", "acceptAriaLabel", "acceptVisible", "rejectIcon", "rejectLabel", "rejectAriaLabel", "rejectVisible", "acceptButtonStyleClass", "rejectButtonStyleClass", "closeOnEscape", "dismissableMask", "blockScroll", "rtl", "closable", "appendTo", "key", "autoZIndex", "baseZIndex", "transitionOptions", "focusTrap", "defaultFocus", "breakpoints", "visible", "position"], outputs: ["onHide"] }, { kind: "component", type: PopupEditorFormulaComponent, selector: "app-popup-editor-formula" }] });
15438
15510
  }
15439
15511
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: FuenteReporteComponent, decorators: [{
15440
15512
  type: Component,
15441
- args: [{ selector: 'app-fuente-reporte', standalone: true, imports: [ProgressBarModule, TooltipModule, CheckboxModule, PopupTablasFuenteComponent, StepsModule, CommonModule, TabViewModule, SplitButtonModule, NgIf, TranslateModule, InputTextModule, CommonModule, AccordionModule, DropdownModule, FormsModule, TableModule, TablaGeneralComponent, FiltroGeneralComponent, ButtonModule, ReactiveFormsModule, GeneralPipe, InputTextareaModule, ConfirmPopupModule, ButtonModule], providers: [MessageService, ConfirmationService], template: "@if(vistaVisualizar == null){\r\n<h1>{{'fuente' | translate}} {{'reporte'| translate}}</h1>\r\n<div class=\"flex justify-content-between align-items-center mb-3\">\r\n <app-filtro-general [filtros]=\"filters\" [datatable]=\"tablaGeneral\">\r\n <ng-template let-form>\r\n <ng-container [formGroup]=\"form\">\r\n <span class=\"p-float-label\">\r\n <input pInputText autofocus type=\"text\" id=\"descripcion\" formControlName=\"descripcion\"\r\n autocomplete=\"off\" />\r\n <label for=\"descripcion\">{{'filtro' | translate}}</label>\r\n </span>\r\n </ng-container>\r\n </ng-template>\r\n </app-filtro-general>\r\n <button pButton label=\"{{'link_nuevo' | translate}}\" (click)=\"nuevo()\" icon=\"pi pi-plus\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\r\n</div>\r\n<app-tabla-general #tablaGeneral [columns]=\"columns\" [value]=\"paginador\" [rows]=\"paginator.rows\"\r\n [totalRecords]=\"paginator.totalRecords\" (onLoad)=\"load($event)\" (onRowSelect)=\"verDetalle($event)\"\r\n [loading]=\"loading\"></app-tabla-general>\r\n}\r\n@if(vistaVisualizar != null){\r\n<div class=\"flex justify-content-between align-items-center mb-3\">\r\n <h1>{{'fuente' | translate}} {{'reporte'| translate}}</h1>\r\n <button pButton pRipple (click)=\"regresar()\" label=\"Regresar\" icon=\"pi pi-chevron-left\"\r\n class=\"p-button-text font-semibold\"></button>\r\n</div>\r\n<p-tabView [(activeIndex)]=\"tabPrincipal\">\r\n <p-tabPanel header=\"{{ 'fuente'| translate}}\">\r\n <div class=\"card\">\r\n <div class=\"mt-4\">\r\n <h5><i class=\"glyphicons glyphicons-book\"></i>{{'datos'| translate}} {{'basicos'| translate}}</h5>\r\n </div>\r\n\r\n <div class=\"p-fluid p-formgrid grid\">\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <input pInputText autofocus type=\"text\" id=\"peso\" [(ngModel)]=\"fuente.descripcion\"\r\n autocomplete=\"off\" />\r\n <label for=\"peso\">{{'nombre' | translate}}</label>\r\n </span>\r\n </div>\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea [(ngModel)]=\"query\"\r\n autofocus [autoResize]=\"true\"> </textarea>\r\n <label for=\"descripcion\">{{'consulta' | translate}}\r\n </label>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\" icon=\"glyphicons glyphicons-floppy-save\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardar()\">\r\n </button>\r\n <p-splitButton class=\"ml-2\" label=\"Acciones Fuente\" icon=\"glyphicons glyphicons-list\"\r\n [model]=\"menu\"></p-splitButton>\r\n </div>\r\n </div>\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-secondary\" icon=\"glyphicons glyphicons-floppy-save\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardarCampos()\">\r\n </button>\r\n </div>\r\n\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"campos\" [scrollable]=\"true\"\r\n [totalRecords]=\"campos.length\" [paginator]=\"camposSeleccionar.length > 10\" [rows]=\"10\"\r\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\" scrollDirection=\"horizontal\"\r\n styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"llaveTabla\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'nombre' | translate}}</th>\r\n <th style=\"width:25%\">{{'sintaxis' | translate}}</th>\r\n <th style=\"width:25%\">{{'tipo' | translate}} de {{'dato' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-campo let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"campo\">\r\n <td style=\"width:25%\">\r\n <input pInputText type=\"text\" [(ngModel)]=\"campo.nombre \" class=\"w-full\">\r\n </td>\r\n <td style=\"width:25%\">\r\n {{campo.tipoDato}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{campo.tipoDato}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </p-tabPanel>\r\n\r\n\r\n <p-tabPanel header=\"{{ 'wizard'| translate}}\">\r\n <p-steps [model]=\"items\" [readonly]=\"false\" [activeIndex]=\"actual\"></p-steps>\r\n\r\n <div class=\"cardInstrucciones mt-4 mb-3\" style=\"margin-bottom: 0px !important;\">\r\n <div class=\"flex align-items-center justify-content-between\">\r\n <div class=\"flex\">\r\n <div class=\"icono\">\r\n <i class=\"pi pi-bell\"></i>\r\n </div>\r\n <div class=\"contenedor\" style=\"margin-top: 2%;\">\r\n <label>{{mapaMensajes?.get(actual)}}</label>\r\n </div>\r\n </div>\r\n <div class=\"flex align-items-center justify-content-end\">\r\n <p-button (onClick)=\"anterior()\" [rounded]=\"true\" icon=\"pi pi-angle-left\" class=\"p-button-outlined\"\r\n pTooltip=\"Anterior\" tooltipPosition=\"top\" placeholder=\"Top\"\r\n [outlined]=\"true\" [disabled]=\"actual <= 0\" />\r\n <p-button (onClick)=\"siguiente()\" [rounded]=\"true\" icon=\"pi pi-angle-right\" class=\"p-button-outlined\"\r\n [outlined]=\"true\" *ngIf=\"actual != 3\"\r\n [pTooltip]=\"actual === 3 ? 'Terminar': 'Siguiente'\" tooltipPosition=\"top\" placeholder=\"Top\" />\r\n\r\n <button pButton label=\"{{'terminar' | translate}}\" icon=\"pi pi-angle-right\" (click)=\"siguiente()\"\r\n *ngIf=\"actual === 3\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary p-2 ml-2\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n <p-progressBar mode=\"indeterminate\" [style]=\"{ height: '3px' }\" *ngIf=\"cargarPaso\" />\r\n\r\n <div class=\"mt-2\" *ngIf=\"!cargarPaso\">\r\n @if(actual === 0){\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton label=\"{{'fuente' | translate}}\" icon=\"pi pi-plus\" (click)=\"buscarTabla()\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2 mt-3\"></button>\r\n </div>\r\n <div>\r\n\r\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"tablasFrom\" [scrollable]=\"true\"\r\n [totalRecords]=\"tablasFrom.length\" scrollDirection=\"both\" scrollDirection=\"horizontal\"\r\n responsiveLayout=\"scroll\" scrollDirection=\"horizontal\" [paginator]=\"tablasFrom.length > 10\"\r\n [rows]=\"10\" [rowsPerPageOptions]=\"[10, 20, 30]\" styleClass=\"p-datatable-striped\"\r\n [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'alias' | translate}}</th>\r\n <th style=\"width:25%\"> </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"tabla\">\r\n <td style=\"width:25%\">\r\n {{tabla.tabla}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.alias}}\r\n </td>\r\n <td class=\"flex justify-content-end\">\r\n <div>\r\n <!-- ELIMINAR -->\r\n <button pButton pRipple type=\"button\" pDeleteEditableRow icon=\"pi pi-trash\"\r\n (click)=\"eliminarTabla(tabla)\"\r\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </div>\r\n\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n }\r\n @if(actual == 1){\r\n <div class=\"mt-3\">\r\n <h4>{{'foranea'| translate}}</h4>\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"foraneas\" [scrollable]=\"true\"\r\n selectionMode=\"single\" scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\r\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\r\n editMode=\"row\" (onRowSelect)=\"adicionarForanea($event)\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"true\" dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'campo' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pSelectableRow]=\"tabla\">\r\n <td style=\"width:25%\">\r\n {{tabla.alias1}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.alias2}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.llave.nombre}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n \r\n <div class=\"card mt-3\">\r\n <div class=\"tabla-planta-personal\"\r\n style=\"padding: 0% !important;background: transparent !important;height: auto !important;\">\r\n <div class=\"flex justify-content-between align-items-center mb-2 mt-2\">\r\n <h4>{{'join'| translate}}</h4>\r\n <button pButton label=\"{{'agregar' | translate}} {{'join' | translate}}\" (click)=\"nuevoJoin()\"\r\n icon=\"pi pi-plus\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\r\n </div>\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"joinsFrom\" [scrollable]=\"true\"\r\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\r\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\r\n editMode=\"row\" currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\"\r\n [lazy]=\"true\" dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:45%\">{{'campo' | translate}} 1</th>\r\n <th style=\"width:5%\">{{'=' | translate}}</th>\r\n <th style=\"width:45%\">{{'campo' | translate}} 2</th>\r\n <th>{{'' | translate}}</th>\r\n </tr>\r\n <tr class=\" TablaNuevoRegistro\" *ngIf=\"verNuevoJoin\">\r\n <td style=\"width:45%\">\r\n <p-dropdown [options]=\"listaColumnas\" optionValue=\"value\" [(ngModel)]=\"col1\"\r\n appendTo=\"body\" [autoZIndex]=\"false\" [autoDisplayFirst]=\"false\"\r\n optionLabel=\"label\" (onChange)=\"cambioJoin($event)\"></p-dropdown>\r\n </td>\r\n <td style=\"width:5%\">=</td>\r\n <td style=\"width:45%\">\r\n <p-dropdown [options]=\"listaJoin\" optionValue=\"value\" [(ngModel)]=\"col2\"\r\n appendTo=\"body\" [autoZIndex]=\"false\" [autoDisplayFirst]=\"false\"\r\n optionLabel=\"label\"></p-dropdown>\r\n </td>\r\n\r\n <td class=\"flex justify-content-end\">\r\n <button pButton pRipple type=\"button\" icon=\"pi pi-check\" (click)=\"adicionarJoin()\"\r\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n <button pButton pRipple type=\"button\" (click)=\"cancelarNuevoJoin()\"\r\n icon=\"pi pi-times\"\r\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"tabla\">\r\n <td style=\"width:45%\">\r\n {{tabla.columna1}}\r\n </td>\r\n <td style=\"width:5%\">\r\n {{'='}}\r\n </td>\r\n <td style=\"width:45%\">\r\n {{tabla.columna2}}\r\n </td>\r\n <td>\r\n <button pButton pRipple type=\"button\" pDeleteEditableRow icon=\"pi pi-trash\"\r\n (click)=\"eliminarJoin(tabla)\"\r\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n }\r\n @if(actual == 2){\r\n\r\n <div class=\"card\">\r\n <div class=\"mt-4\">\r\n <h5><i class=\"glyphicons glyphicons-book\"></i>{{'where'| translate}}</h5>\r\n </div>\r\n\r\n <div class=\"p-fluid p-formgrid grid\">\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea\r\n [(ngModel)]=\"fuente.whereAdicional\" autofocus [autoResize]=\"true\"> </textarea>\r\n <label for=\"descripcion\">{{'consulta' | translate}}\r\n </label>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n <!-- <div class=\"flex justify-content-end\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\"\r\n icon=\"glyphicons glyphicons-floppy-save\" label=\"{{'link_guardar' | translate}}\"\r\n (click)=\"editarWhere()\">\r\n </button>\r\n </div> -->\r\n </div>\r\n\r\n }\r\n @if(actual == 3){\r\n <div class=\"mt-3\">\r\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"camposSeleccionar\" [scrollable]=\"true\"\r\n [totalRecords]=\"camposSeleccionar.length\" scrollDirection=\"both\" scrollDirection=\"horizontal\"\r\n responsiveLayout=\"scroll\" scrollDirection=\"horizontal\" [paginator]=\"camposSeleccionar.length > 10\"\r\n [rows]=\"10\" [rowsPerPageOptions]=\"[10, 20, 30]\" styleClass=\"p-datatable-striped\"\r\n [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"alias\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\" alignFrozen=\"left\" pFrozenColumn>\r\n <p-checkbox [style]=\"{'margin-left': '1%','margin-right':'1%'}\"\r\n [(ngModel)]=\"seleccionGeneral\" [binary]=\"true\" [ngModel]=\"todosSeleccionados()\"\r\n (ngModelChange)=\"actualizarSeleccion($event)\"></p-checkbox>\r\n <span style=\"margin-left:1%\">{{'tabla' | translate}}</span>\r\n </th>\r\n <th style=\"width:25%\">{{'columna' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla>\r\n <tr>\r\n <td style=\"width:25%\">\r\n <p-checkbox class=\"mr-2 \" [(ngModel)]=\"tabla.seleccionado\" [binary]=\"true\"\r\n inputId=\"binary\">\r\n </p-checkbox>\r\n {{tabla.columna.reporteFuente}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.columna.nombre}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n }\r\n </div>\r\n </p-tabPanel>\r\n</p-tabView>\r\n\r\n}\r\n\r\n<app-popup-tablas-fuente #popupTablasFuenteUI\r\n (aplicarDestinoOcultar)=\"setTablaSeleccionada($event)\"></app-popup-tablas-fuente>", styles: [":host ::ng-deep .botonCircular{background:var(--color-85);border:solid 1px var(--color-85);color:var(--color-400)}\n"] }]
15513
+ args: [{ selector: 'app-fuente-reporte', standalone: true, imports: [ProgressBarModule, TooltipModule, CheckboxModule, PopupTablasFuenteComponent, StepsModule, CommonModule, TabViewModule, SplitButtonModule, NgIf,
15514
+ TranslateModule, InputTextModule, CommonModule, AccordionModule, DropdownModule, FormsModule, TableModule, TablaGeneralComponent, FiltroGeneralComponent,
15515
+ ButtonModule, ReactiveFormsModule, GeneralPipe, InputTextareaModule, ConfirmPopupModule, ButtonModule, ConfirmDialogModule, PopupEditorFormulaComponent], providers: [MessageService, ConfirmationService], template: "<p-confirmDialog #cd key=\"eliminar\">\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"mt-3\">\r\n <button type=\"button\"\r\n class=\"p-button-outlined-button-secondary p-button-outlined p-button p-component\" pButton\r\n icon=\"pi pi-times\" label=\"No\" (click)=\"cd.reject()\"></button>\r\n <button type=\"button\" pButton icon=\"pi pi-check\" label=\"Si\" class=\"p-button-raised\"\r\n (click)=\"cd.accept()\"></button>\r\n </div>\r\n </ng-template>\r\n</p-confirmDialog>\r\n@if(vistaVisualizar == null){\r\n<h1>{{'fuente' | translate}} {{'reporte'| translate}}</h1>\r\n<div class=\"flex justify-content-between align-items-center mb-3\">\r\n <app-filtro-general [filtros]=\"filters\" [datatable]=\"tablaGeneral\">\r\n <ng-template let-form>\r\n <ng-container [formGroup]=\"form\">\r\n <span class=\"p-float-label\">\r\n <input pInputText autofocus type=\"text\" id=\"descripcion\" formControlName=\"descripcion\"\r\n autocomplete=\"off\" />\r\n <label for=\"descripcion\">{{'filtro' | translate}}</label>\r\n </span>\r\n </ng-container>\r\n </ng-template>\r\n </app-filtro-general>\r\n <button pButton label=\"{{'link_nuevo' | translate}}\" (click)=\"nuevo()\" icon=\"pi pi-plus\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\r\n</div>\r\n<app-tabla-general #tablaGeneral [columns]=\"columns\" [value]=\"paginador\" [rows]=\"paginator.rows\"\r\n [totalRecords]=\"paginator.totalRecords\" (onLoad)=\"load($event)\" (onRowSelect)=\"verDetalle($event)\"\r\n [loading]=\"loading\"></app-tabla-general>\r\n}\r\n@if(vistaVisualizar != null){\r\n<div class=\"flex justify-content-between align-items-center mb-3\">\r\n <h1>{{'fuente' | translate}} {{'reporte'| translate}}</h1>\r\n <button pButton pRipple (click)=\"regresar()\" label=\"Regresar\" icon=\"pi pi-chevron-left\"\r\n class=\"p-button-text font-semibold\"></button>\r\n</div>\r\n<p-tabView [(activeIndex)]=\"tabPrincipal\">\r\n <p-tabPanel header=\"{{ 'fuente'| translate}}\">\r\n <div class=\"card\">\r\n <div class=\"mt-4\">\r\n <h5><i class=\"glyphicons glyphicons-book\"></i>{{'datos'| translate}} {{'basicos'| translate}}</h5>\r\n </div>\r\n\r\n <div class=\"p-fluid p-formgrid grid\">\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <input pInputText autofocus type=\"text\" id=\"peso\" [(ngModel)]=\"fuente.descripcion\"\r\n [class.ng-dirty]=\"(!utilsService.validarCampoObligatorio(fuente.descripcion) && clickGuardar)\"\r\n [class.ng-invalid]=\"(!utilsService.validarCampoObligatorio(fuente.descripcion) && clickGuardar)\"\r\n autocomplete=\"off\" />\r\n <label for=\"peso\">{{'nombre' | translate}}</label>\r\n </span>\r\n </div>\r\n\r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <span class=\"p-float-label\">\r\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea [(ngModel)]=\"query\"\r\n [class.ng-dirty]=\"((!isQueryValido() && clickGuardar) || errorQuery)\"\r\n [class.ng-invalid]=\"((!isQueryValido() && clickGuardar) || errorQuery)\"\r\n autofocus [autoResize]=\"true\"> </textarea>\r\n <label for=\"descripcion\">{{'consulta' | translate}}\r\n </label>\r\n </span>\r\n </div>\r\n \r\n </div>\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\" icon=\"glyphicons glyphicons-floppy-save\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardar()\">\r\n </button> \r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\" icon=\"glyphicons glyphicons-floppy-save\" *ngIf=\"\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardar()\">\r\n </button>\r\n <p-splitButton class=\"ml-2\" label=\"Acciones Fuente\" icon=\"glyphicons glyphicons-list\"\r\n [model]=\"menu\"></p-splitButton>\r\n </div>\r\n </div>\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-secondary\" icon=\"glyphicons glyphicons-floppy-save\"\r\n label=\"{{'link_guardar' | translate}}\" (click)=\"guardarCampos()\">\r\n </button>\r\n </div>\r\n\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"campos\" [scrollable]=\"true\"\r\n [totalRecords]=\"campos.length\" [paginator]=\"campos.length > 10\" [rows]=\"10\"\r\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\" scrollDirection=\"horizontal\"\r\n styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"llaveTabla\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'nombre' | translate}}</th>\r\n <th style=\"width:25%\">{{'sintaxis' | translate}}</th>\r\n <th style=\"width:25%\">{{'tipo' | translate}} de {{'dato' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-campo let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"campo\">\r\n <td style=\"width:25%\">\r\n <input pInputText type=\"text\" [(ngModel)]=\"campo.nombre \" class=\"w-full\">\r\n </td>\r\n <td style=\"width:25%\">\r\n {{campo.tipoDato}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{campo.tipoDato}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </p-tabPanel>\r\n\r\n\r\n <p-tabPanel header=\"{{ 'wizard'| translate}}\">\r\n <p-steps [model]=\"items\" [readonly]=\"false\" [activeIndex]=\"actual\"></p-steps>\r\n\r\n <div class=\"cardInstrucciones mt-4 mb-3\" style=\"margin-bottom: 0px !important;\">\r\n <div class=\"flex align-items-center justify-content-between\">\r\n <div class=\"flex\">\r\n <div class=\"icono\">\r\n <i class=\"pi pi-bell\"></i>\r\n </div>\r\n <div class=\"contenedor\" style=\"margin-top: 2%;\">\r\n <label>{{mapaMensajes?.get(actual)}}</label>\r\n </div>\r\n </div>\r\n <div class=\"flex align-items-center justify-content-end\">\r\n <p-button (onClick)=\"anterior()\" [rounded]=\"true\" icon=\"pi pi-angle-left\" class=\"p-button-outlined\"\r\n pTooltip=\"Anterior\" tooltipPosition=\"top\" placeholder=\"Top\"\r\n [outlined]=\"true\" [disabled]=\"actual <= 0\" />\r\n <p-button (onClick)=\"siguiente()\" [rounded]=\"true\" icon=\"pi pi-angle-right\" class=\"p-button-outlined\"\r\n [outlined]=\"true\" *ngIf=\"actual != 3\"\r\n [pTooltip]=\"actual === 3 ? 'Terminar': 'Siguiente'\" tooltipPosition=\"top\" placeholder=\"Top\" />\r\n\r\n <button pButton label=\"{{'terminar' | translate}}\" icon=\"pi pi-angle-right\" (click)=\"siguiente()\"\r\n *ngIf=\"actual === 3\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary p-2 ml-2\"></button>\r\n </div>\r\n </div>\r\n </div>\r\n <p-progressBar mode=\"indeterminate\" [style]=\"{ height: '3px' }\" *ngIf=\"cargarPaso\" />\r\n\r\n <div class=\"mt-2\" *ngIf=\"!cargarPaso\">\r\n @if(actual === 0){\r\n <div class=\"flex justify-content-end mb-2\">\r\n <button pButton label=\"{{'fuente' | translate}}\" icon=\"pi pi-plus\" (click)=\"buscarTabla()\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2 mt-3\"></button>\r\n </div>\r\n <div>\r\n\r\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"tablasFrom\" [scrollable]=\"true\"\r\n [totalRecords]=\"tablasFrom.length\" scrollDirection=\"both\" scrollDirection=\"horizontal\"\r\n responsiveLayout=\"scroll\" scrollDirection=\"horizontal\" [paginator]=\"tablasFrom.length > 10\"\r\n [rows]=\"10\" [rowsPerPageOptions]=\"[10, 20, 30]\" styleClass=\"p-datatable-striped\"\r\n [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'alias' | translate}}</th>\r\n <th style=\"width:25%\"> </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"tabla\">\r\n <td style=\"width:25%\">\r\n {{tabla.tabla}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.alias}}\r\n </td>\r\n <td class=\"flex justify-content-end\">\r\n <div>\r\n <!-- ELIMINAR -->\r\n <button pButton pRipple type=\"button\" pDeleteEditableRow icon=\"pi pi-trash\"\r\n (click)=\"eliminarTabla(tabla)\"\r\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </div>\r\n\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n }\r\n @if(actual == 1){\r\n <div class=\"mt-3\">\r\n <h4>{{'foranea'| translate}}</h4>\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"foraneas\" [scrollable]=\"true\"\r\n selectionMode=\"single\" scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\r\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\r\n editMode=\"row\" (onRowSelect)=\"adicionarForanea($event)\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"true\" dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'tabla' | translate}}</th>\r\n <th style=\"width:25%\">{{'campo' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pSelectableRow]=\"tabla\">\r\n <td style=\"width:25%\">\r\n {{tabla.alias1}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.alias2}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.llave.nombre}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n \r\n <div class=\"card mt-3\">\r\n <div class=\"tabla-planta-personal\"\r\n style=\"padding: 0% !important;background: transparent !important;height: auto !important;\">\r\n <div class=\"flex justify-content-between align-items-center mb-2 mt-2\">\r\n <h4>{{'join'| translate}}</h4>\r\n <button pButton label=\"{{'agregar' | translate}} {{'join' | translate}}\" (click)=\"nuevoJoin()\"\r\n icon=\"pi pi-plus\"\r\n class=\"p-ripple p-element p-button p-component p-button-secondary mb-2\"></button>\r\n </div>\r\n <p-table #tablaGeneralEntrada id=\"tabla_lista_tipo_entidad\" [value]=\"joinsFrom\" [scrollable]=\"true\"\r\n scrollDirection=\"both\" scrollDirection=\"horizontal\" responsiveLayout=\"scroll\"\r\n scrollDirection=\"horizontal\" styleClass=\"p-datatable-striped\" [showCurrentPageReport]=\"true\"\r\n editMode=\"row\" currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\"\r\n [lazy]=\"true\" dataKey=\"llave\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:45%\">{{'campo' | translate}} 1</th>\r\n <th style=\"width:5%\">{{'=' | translate}}</th>\r\n <th style=\"width:45%\">{{'campo' | translate}} 2</th>\r\n <th>{{'' | translate}}</th>\r\n </tr>\r\n <tr class=\" TablaNuevoRegistro\" *ngIf=\"verNuevoJoin\">\r\n <td style=\"width:45%\">\r\n <p-dropdown [options]=\"listaColumnas\" optionValue=\"value\" [(ngModel)]=\"col1\"\r\n appendTo=\"body\" [autoZIndex]=\"false\" [autoDisplayFirst]=\"false\"\r\n optionLabel=\"label\" (onChange)=\"cambioJoin($event)\"></p-dropdown>\r\n </td>\r\n <td style=\"width:5%\">=</td>\r\n <td style=\"width:45%\">\r\n <p-dropdown [options]=\"listaJoin\" optionValue=\"value\" [(ngModel)]=\"col2\"\r\n appendTo=\"body\" [autoZIndex]=\"false\" [autoDisplayFirst]=\"false\"\r\n optionLabel=\"label\"></p-dropdown>\r\n </td>\r\n\r\n <td class=\"flex justify-content-end\">\r\n <button pButton pRipple type=\"button\" icon=\"pi pi-check\" (click)=\"adicionarJoin()\"\r\n class=\"p-element p-ripple p-button-rounded p-button-success mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n <button pButton pRipple type=\"button\" (click)=\"cancelarNuevoJoin()\"\r\n icon=\"pi pi-times\"\r\n class=\"p-element p-ripple p-button-rounded p-button-danger mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla let-editing=\"editing\" let-ri=\"rowIndex\">\r\n <tr [pEditableRow]=\"tabla\">\r\n <td style=\"width:45%\">\r\n {{tabla.columna1}}\r\n </td>\r\n <td style=\"width:5%\">\r\n {{'='}}\r\n </td>\r\n <td style=\"width:45%\">\r\n {{tabla.columna2}}\r\n </td>\r\n <td>\r\n <button pButton pRipple type=\"button\" pDeleteEditableRow icon=\"pi pi-trash\"\r\n (click)=\"eliminarJoin(tabla)\"\r\n class=\"p-element p-ripple p-button-rounded p-button-outlined mr-2 mb-2 p-button p-component p-button-icon-only\"></button>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n }\r\n @if(actual == 2){\r\n\r\n <div class=\"card\">\r\n <div class=\"mt-4\">\r\n <h5><i class=\"glyphicons glyphicons-book\"></i>{{'where'| translate}}</h5>\r\n </div>\r\n\r\n <div class=\"p-fluid p-formgrid grid\">\r\n \r\n <div class=\"field col-12 md:col-12 lg:col-12\">\r\n <div class=\"col-12 flex p-0\">\r\n <span class=\"p-float-label w-full\">\r\n <textarea class=\"w-full\" id=\"float-input\" rows=\"5\" cols=\"30\" pInputTextarea\r\n [(ngModel)]=\"fuente.whereAdicional\" autofocus [autoResize]=\"true\"> </textarea>\r\n <label for=\"descripcion\">{{'consulta' | translate}}\r\n </label>\r\n </span>\r\n <!-- VER ATRIBUTOS -->\r\n <button pButton pRipple class=\"m-2 mb-1 p-button p-button-rounded p-button-secondary\"\r\n icon=\"glyphicons glyphicons-justify\" (click)=\"editarWhere()\" pTooltip=\"{{'atributo' | translate}}s\"\r\n tooltipPosition=\"bottom\">\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <!-- <div class=\"flex justify-content-end\">\r\n <button pButton pRipple class=\"ml-2 p-button p-button-raised\"\r\n icon=\"glyphicons glyphicons-floppy-save\" label=\"{{'link_guardar' | translate}}\"\r\n (click)=\"editarWhere()\">\r\n </button>\r\n </div> -->\r\n </div>\r\n\r\n }\r\n @if(actual == 3){\r\n <div class=\"mt-3\">\r\n <p-table id=\"tabla_lista_tipo_entidad\" [value]=\"camposSeleccionar\" [scrollable]=\"true\"\r\n [totalRecords]=\"camposSeleccionar.length\" scrollDirection=\"both\" scrollDirection=\"horizontal\"\r\n responsiveLayout=\"scroll\" scrollDirection=\"horizontal\" [paginator]=\"camposSeleccionar.length > 10\"\r\n [rows]=\"10\" [rowsPerPageOptions]=\"[10, 20, 30]\" styleClass=\"p-datatable-striped\"\r\n [showCurrentPageReport]=\"true\" editMode=\"row\"\r\n currentPageReportTemplate=\"{first} al {last} de {totalRecords} registros\" [lazy]=\"false\"\r\n dataKey=\"alias\">\r\n <ng-template pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width:25%\" alignFrozen=\"left\" pFrozenColumn>\r\n <p-checkbox [style]=\"{'margin-left': '1%','margin-right':'1%'}\"\r\n [(ngModel)]=\"seleccionGeneral\" [binary]=\"true\" [ngModel]=\"todosSeleccionados()\"\r\n (ngModelChange)=\"actualizarSeleccion($event)\"></p-checkbox>\r\n <span style=\"margin-left:1%\">{{'tabla' | translate}}</span>\r\n </th>\r\n <th style=\"width:25%\">{{'columna' | translate}}</th>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"body\" let-tabla>\r\n <tr>\r\n <td style=\"width:25%\">\r\n <p-checkbox class=\"mr-2 \" [(ngModel)]=\"tabla.seleccionado\" [binary]=\"true\"\r\n inputId=\"binary\">\r\n </p-checkbox>\r\n {{tabla.columna.reporteFuente}}\r\n </td>\r\n <td style=\"width:25%\">\r\n {{tabla.columna.nombre}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n <ng-template pTemplate=\"emptymessage\">\r\n <tr class=\"p-3 font-medium emptymessage\">\r\n <td colspan=\"5\">\r\n {{'mensajetablavacia' | translate}}\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-table>\r\n </div>\r\n }\r\n </div>\r\n </p-tabPanel>\r\n</p-tabView>\r\n\r\n}\r\n<app-popup-editor-formula #popupEditorFormula></app-popup-editor-formula>\r\n\r\n<app-popup-tablas-fuente #popupTablasFuenteUI\r\n (aplicarDestinoOcultar)=\"setTablaSeleccionada($event)\"></app-popup-tablas-fuente>", styles: [":host ::ng-deep .botonCircular{background:var(--color-85);border:solid 1px var(--color-85);color:var(--color-400)}\n"] }]
15442
15516
  }], ctorParameters: () => [{ type: MenuService$1 }, { type: ToastService }, { type: ReportesService }, { type: GeneralService }, { type: UtilsService }, { type: i7.ConfirmationService }, { type: i7$1.TranslateService }, { type: i7.MessageService }, { type: GeneralPipe }], propDecorators: { popupTablasFuenteUI: [{
15443
15517
  type: ViewChild,
15444
15518
  args: ['popupTablasFuenteUI']
15519
+ }], popupEditorFormula: [{
15520
+ type: ViewChild,
15521
+ args: ['popupEditorFormula']
15445
15522
  }] } });
15446
15523
 
15447
15524
  class PopupConvertirPlantillasComponent {