dts-backoffice-util 16.0.0 → 17.0.0

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.
Files changed (50) hide show
  1. package/README.md +143 -52
  2. package/esm2022/dts-backoffice-util.mjs +4 -4
  3. package/esm2022/lib/components/totvs-schedule-execution/totvs-schedule-execution.component.mjs +305 -272
  4. package/esm2022/lib/components/totvs-schedule-execution/totvs-schedule-execution.model.mjs +7 -7
  5. package/esm2022/lib/components/totvs-schedule-execution/totvs-schedule-execution.service.mjs +208 -183
  6. package/esm2022/lib/dts-backoffice-util.module.mjs +54 -54
  7. package/esm2022/lib/interfaces/filter-range.interface.mjs +1 -1
  8. package/esm2022/lib/interfaces/totvs-response.interface.mjs +1 -1
  9. package/esm2022/lib/model/session-info.model.mjs +67 -67
  10. package/esm2022/lib/pipes/dts-date-format.pipe.mjs +20 -20
  11. package/esm2022/lib/services/breadcrumb-control.service.mjs +99 -99
  12. package/esm2022/lib/services/cache-params.service.mjs +25 -25
  13. package/esm2022/lib/services/menu-datasul.service.mjs +118 -118
  14. package/esm2022/lib/services/profile.service.mjs +55 -55
  15. package/esm2022/lib/services/report.service.mjs +57 -57
  16. package/esm2022/lib/services/session-info.service.mjs +36 -36
  17. package/esm2022/lib/services/translate.service.mjs +23 -23
  18. package/esm2022/lib/utils/date.util.mjs +56 -56
  19. package/esm2022/lib/utils/disclaimer.util.mjs +490 -490
  20. package/esm2022/lib/utils/field-validation.util.mjs +179 -179
  21. package/esm2022/lib/utils/file.util.mjs +151 -151
  22. package/esm2022/lib/utils/filter-range.util.mjs +32 -32
  23. package/esm2022/lib/utils/generic-functions.utils.mjs +170 -170
  24. package/esm2022/public-api.mjs +33 -33
  25. package/fesm2022/dts-backoffice-util.mjs +2013 -1955
  26. package/fesm2022/dts-backoffice-util.mjs.map +1 -1
  27. package/index.d.ts +5 -5
  28. package/lib/components/totvs-schedule-execution/totvs-schedule-execution.component.d.ts +53 -49
  29. package/lib/components/totvs-schedule-execution/totvs-schedule-execution.model.d.ts +68 -60
  30. package/lib/components/totvs-schedule-execution/totvs-schedule-execution.service.d.ts +30 -30
  31. package/lib/dts-backoffice-util.module.d.ts +14 -14
  32. package/lib/interfaces/filter-range.interface.d.ts +18 -18
  33. package/lib/interfaces/totvs-response.interface.d.ts +4 -4
  34. package/lib/model/session-info.model.d.ts +40 -40
  35. package/lib/pipes/dts-date-format.pipe.d.ts +7 -7
  36. package/lib/services/breadcrumb-control.service.d.ts +18 -18
  37. package/lib/services/cache-params.service.d.ts +10 -10
  38. package/lib/services/menu-datasul.service.d.ts +27 -27
  39. package/lib/services/profile.service.d.ts +25 -25
  40. package/lib/services/report.service.d.ts +31 -31
  41. package/lib/services/session-info.service.d.ts +12 -12
  42. package/lib/services/translate.service.d.ts +8 -8
  43. package/lib/utils/date.util.d.ts +9 -9
  44. package/lib/utils/disclaimer.util.d.ts +40 -40
  45. package/lib/utils/field-validation.util.d.ts +21 -21
  46. package/lib/utils/file.util.d.ts +23 -23
  47. package/lib/utils/filter-range.util.d.ts +7 -7
  48. package/lib/utils/generic-functions.utils.d.ts +24 -24
  49. package/package.json +5 -5
  50. package/public-api.d.ts +20 -20
package/README.md CHANGED
@@ -11,9 +11,10 @@ Biblioteca que engloba diversos componentes e serviços utilizados no desenvolvi
11
11
  Segue abaixo as últimas versões da Biblioteca, conforme a versão do PO-UI e Angular correspondentes.<br>Detalhes das alterações: **[**VER CHANGE LOG**](https://github.com/ModernizaDatasul/dts-backoffice-util/blob/master/projects/dts-backoffice-util/CHANGELOG.md)**.
12
12
 
13
13
  | PO-UI | Angular | Versão dtsBackofficeUtil |
14
- |-|-| -|
15
- | v16 | v16 | 16.0.0 |
16
- | v15 | v15 | 15.3.1 |
14
+ |-|-|-|
15
+ | v17 | v17 | 17.0.0 |
16
+ | v16 | v16 | 16.1.0 |
17
+ | v15 | v15 | 15.4.1 |
17
18
  | v14 | v14 | 14.4.1 |
18
19
  | v6 | v13 | 6.0.2 |
19
20
  | v5 | v12 | 5.0.1 |
@@ -188,35 +189,6 @@ this.menuDatasulService
188
189
  })
189
190
  ```
190
191
 
191
- No HTML usar da seguinte forma:
192
- ```
193
- <app-totvs-schedule-execution
194
- programName="pdapi701"
195
- externalName="pdp/pdapi701.p"
196
- programEMS5="false"
197
- programVersion=""
198
- [parameters]="parametersRpw"
199
- (endExecution)="endExecution($event)">
200
- </app-totvs-schedule-execution>
201
- ```
202
-
203
- **Definição no JavaScript:**
204
- ```
205
- this.parametersRpw = [
206
- { chave: 'destino', valor: 2, tipo: 'integer' },
207
- { chave: 'arquivo', valor: '', tipo: 'character' },
208
- { chave: 'usuario', valor: 'FERNANDO', tipo: 'character' },
209
- { chave: 'perfil', valor: 880, tipo: 'integer' }
210
- ];
211
- ```
212
- **Definição no Progress:**
213
- ```
214
- DEFINE TEMP-TABLE tt-param NO-UNDO
215
- FIELD destino AS INTEGER
216
- FIELD arquivo AS CHARACTER
217
- FIELD usuario AS CHARACTER
218
- FIELD perfil AS INTEGER.
219
- ```
220
192
  Parâmetros:
221
193
 
222
194
  | Nome | Tipo | Obrigatório | Descrição |
@@ -224,8 +196,12 @@ Parâmetros:
224
196
  | programName | string | Sim | Código de Programa cadastrado no menu, do programa que será executado no RPW. |
225
197
  | externalName | string | Sim | Nome completo do Programa que será executado no RPW, diretório + nome externo.<br>**Importante:** Em virtude do dicionário (Foundation), este parâmetro é limitado a 24 dígitos. |
226
198
  | programEMS5 | boolean | Não | Indica se o programa progress é do EMS5. |
199
+ | programStyle | number | Não | Número que representa o Estilo do Relatório no EMS5. |
227
200
  | programVersion | string | Não | Versão do programa progress. |
228
201
  | parameters | Array | Sim | Objeto representando a Temp-Table que será enviada ao progress. |
202
+ | paramDigitDef | Array | Não | Definição da Temp-Table tt-digita. Utilizado apenas pelo EMS2. Para cada campo da tt-digita, deve ser enviado um objeto com o seguinte formato: **{"chave": "string", "tipo": "string" }**. Onde **chave** representa o nome do campo, e **tipo** representa o tipo de dado (exemplo: character, integer, etc...). |
203
+ | paramDigitData | Array | Não | Dados que serão enviados e alimentados na tt-digita. Utilizado apenas pelo EMS2. |
204
+ | paramSelections | Array | Não | Parâmetros de Seleção. Utilizado apenas pelo EMS5. |
229
205
  | disabledParams | boolean | Não | Quando for igual a **"Sim"**, irá desabilitar todos os campos do Agendamento (Data Execução, Servidor, Repetir ocorrência, etc...). |
230
206
  | loading | boolean | Não | Quando for igual a **"Sim"**, irá apresentar a tela de "loading" no momento da criação da agenda até o retorno do serviço. |
231
207
  | endExecution | EventEmitter | Não | Evento que será disparado ao finalizar o agendamento. Ele irá enviar como parâmetro um objeto da interface **IScheduleParameters**, contendo os parâmetros informados pelo usuário. |
@@ -241,23 +217,76 @@ Exemplo de Uso:
241
217
 
242
218
  Em conjunto com o parâmetro **endExecution** o método **setScheduleParameters** pode ser utilizado para salvar e recuperar as informações de agendamento informadas pelo usuário.
243
219
 
220
+ **Definições no HTML:**
244
221
  ```
245
- - HTML -
222
+ // EXEMPLO PARA EMS5
246
223
  <app-totvs-schedule-execution #schParam
247
- ...
224
+ programName="rpt_grp_repres"
225
+ externalName="rpt_grp_repres"
226
+ programEMS5="true"
227
+ programStyle="40"
228
+ programVersion="1.00.00.004"
229
+ [parameters]="parametersRpw"
230
+ [paramSelections]="paramSelectionsRpw"
248
231
  (endExecution)="endExecutionSchedule($event)">
249
232
  </app-totvs-schedule-execution>
250
233
 
251
- - TS -
234
+ // EXEMPLO PARA EMS2
235
+ <app-totvs-schedule-execution #schParam
236
+ programName="pdapi701"
237
+ externalName="pdp/pdapi701.p"
238
+ [parameters]="parametersRpw"
239
+ [paramDigitDef]="paramDigitDefRpw"
240
+ [paramDigitData]="paramDigitDataRpw"
241
+ (endExecution)="endExecutionSchedule($event)">
242
+ </app-totvs-schedule-execution>
243
+ ```
244
+ **Definições no JavaScript:**
245
+ ```
252
246
  @ViewChild('schParam', { static: true }) schParam: TotvsScheduleExecutionComponent;
253
- ...
247
+
254
248
  scheduleParams: IScheduleParameters;
255
- ...
249
+ parametersRpw = new Array<any>();
250
+ paramDigitDefRpw = new Array<any>();
251
+ paramDigitDataRpw = new Array<any>();
252
+ paramSelectionsRpw = new Array<any>();
253
+
256
254
  ngOnInit(): void {
257
- ...
258
255
  this.loadLocalStorage();
259
256
  this.schParam.setScheduleParameters(this.scheduleParams);
260
- ...
257
+
258
+ this.createParametersRpw();
259
+ }
260
+
261
+ createParametersRpw(): void {
262
+ // Parâmetros
263
+ this.parametersRpw = [
264
+ { chave: 'destino', valor: 2, tipo: 'integer' },
265
+ { chave: 'arquivo', valor: '', tipo: 'character' },
266
+ { chave: 'usuario', valor: 'FERNANDO', tipo: 'character' },
267
+ { chave: 'perfil', valor: 880, tipo: 'integer' }
268
+ ];
269
+
270
+ // Definição da tt-digita (EMS2)
271
+ this.paramDigitDefRpw = [
272
+ { chave: 'cod-estab', tipo: 'character' },
273
+ { chave: 'cod-ccusto', tipo: 'integer' }
274
+ ];
275
+
276
+ // Dados da tt-digita (EMS2)
277
+ this.paramDigitDataRpw = [
278
+ { "cod-estab": '19', "cod-ccusto": 17 },
279
+ { "cod-estab": '28', "cod-ccusto": 11 },
280
+ { "cod-estab": '73', "cod-ccusto": 90 }
281
+ ];
282
+
283
+ // Seleção (Relatório Regra/Exceção do EMS5)
284
+ this.paramSelectionsRpw = [
285
+ { ind_dwb_set_type: "Regra", cod_dwb_set: "estab",
286
+ cod_dwb_set_initial: "01", cod_dwb_set_final: "FF", log_dwb_rule: true },
287
+ { ind_dwb_set_type: "Exceção", cod_dwb_set: "ccusto",
288
+ cod_dwb_set_initial: "30", cod_dwb_set_final: "35", log_dwb_rule: false }
289
+ ]
261
290
  }
262
291
 
263
292
  endExecutionSchedule(event): void {
@@ -275,6 +304,18 @@ private loadLocalStorage(): void {
275
304
  this.scheduleParams = JSON.parse(localStorage.getItem('param-maint.schParam'));
276
305
  }
277
306
  ```
307
+ **Definições no Progress:**
308
+ ```
309
+ DEFINE TEMP-TABLE tt-param NO-UNDO
310
+ FIELD destino AS INTEGER
311
+ FIELD arquivo AS CHARACTER
312
+ FIELD usuario AS CHARACTER
313
+ FIELD perfil AS INTEGER.
314
+
315
+ DEFINE TEMP-TABLE tt-digita NO-UNDO
316
+ FIELD cod-estab AS CHARACTER
317
+ FIELD cod-ccusto AS INTEGER.
318
+ ```
278
319
 
279
320
  Interfaces:
280
321
 
@@ -316,8 +357,8 @@ Exemplo de Uso:
316
357
 
317
358
  Segue abaixo exemplos da geração de agendamento, busca e acompanhamento da execução.
318
359
 
360
+ **Definições no HTML:**
319
361
  ```
320
- - HTML -
321
362
  <po-lookup
322
363
  p-label="Servidor RPW"
323
364
  p-placeholder="Servidor RPW"
@@ -328,8 +369,9 @@ Segue abaixo exemplos da geração de agendamento, busca e acompanhamento da exe
328
369
  p-field-value="code"
329
370
  [(ngModel)]="executionServer">
330
371
  </po-lookup>
331
-
332
- - TS -
372
+ ```
373
+ **Definições no JavaScript:**
374
+ ```
333
375
  executionServer: string;
334
376
  jobScheduleID: string;
335
377
  executionID: string;
@@ -356,15 +398,46 @@ createSchedule(): void {
356
398
  // Criar um Agendamento para ser Executado "agora"
357
399
  const execParam = new ExecutionParameters();
358
400
  execParam.executionServer = executionServer;
359
- execParam.programName = 'api_executa_carga_dados_carol';
360
- execParam.externalName = 'api_executa_carga_dados_carol';
401
+
402
+ // Exemplo de Parâmetros para o EMS5
403
+ execParam.programName = 'rpt_grp_repres';
404
+ execParam.externalName = 'rpt_grp_repres';
361
405
  execParam.programEMS5 = true;
362
- execParam.programVersion = '1.00.00.001';
406
+ execParam.programStyle = 40;
407
+ execParam.programVersion = '1.00.00.004';
363
408
  execParam.businessParams = [
364
409
  { chave: 'cTipoCarga', valor: 'register', tipo: 'character' },
365
410
  { chave: 'lCargaTotal', valor: false, tipo: 'logical' },
366
411
  { chave: 'dDataCorte', valor: null, tipo: 'date' }
367
412
  ];
413
+ // Seleção (Relatório Regra/Exceção do EMS5)
414
+ execParam.paramSelections = [
415
+ { ind_dwb_set_type: "Regra", cod_dwb_set: "estab",
416
+ cod_dwb_set_initial: "01", cod_dwb_set_final: "FF", log_dwb_rule: true },
417
+ { ind_dwb_set_type: "Exceção", cod_dwb_set: "ccusto",
418
+ cod_dwb_set_initial: "30", cod_dwb_set_final: "35", log_dwb_rule: false }
419
+ ];
420
+
421
+ // Exemplo de Parâmetros para o EMS2
422
+ execParam.programName = 'pdapi701';
423
+ execParam.externalName = 'pdp/pdapi701.p';
424
+ execParam.businessParams = [
425
+ { chave: 'destino', valor: 2, tipo: 'integer' },
426
+ { chave: 'arquivo', valor: '', tipo: 'character' },
427
+ { chave: 'usuario', valor: 'FERNANDO', tipo: 'character' },
428
+ { chave: 'perfil', valor: 880, tipo: 'integer' }
429
+ ];
430
+ // Definição da tt-digita (EMS2)
431
+ execParam.paramDigitDef = [
432
+ { chave: 'cod-estab', tipo: 'character' },
433
+ { chave: 'cod-ccusto', tipo: 'integer' }
434
+ ];
435
+ // Dados da tt-digita (EMS2)
436
+ execParam.paramDigitData = [
437
+ { "cod-estab": '19', "cod-ccusto": 17 },
438
+ { "cod-estab": '28', "cod-ccusto": 11 },
439
+ { "cod-estab": '73', "cod-ccusto": 90 }
440
+ ];
368
441
 
369
442
  this.schedExecSubscription$ = this.scheduleExecution
370
443
  .createExecutionForNow(execParam, true)
@@ -450,6 +523,18 @@ followUpCallBack(execStatus: IExecutionStatus): boolean {
450
523
  return true; // Continua monitorando - retornar "false" para parar o monitoramento
451
524
  }
452
525
  ```
526
+ **Definições no Progress:**
527
+ ```
528
+ DEFINE TEMP-TABLE tt-param NO-UNDO
529
+ FIELD destino AS INTEGER
530
+ FIELD arquivo AS CHARACTER
531
+ FIELD usuario AS CHARACTER
532
+ FIELD perfil AS INTEGER.
533
+
534
+ DEFINE TEMP-TABLE tt-digita NO-UNDO
535
+ FIELD cod-estab AS CHARACTER
536
+ FIELD cod-ccusto AS INTEGER.
537
+ ```
453
538
 
454
539
  Interfaces:
455
540
 
@@ -460,8 +545,12 @@ IExecutionParameters
460
545
  | programName | string | Sim | Código de Programa cadastrado no menu, do programa que será executado no RPW. |
461
546
  | externalName | string | Sim | Nome completo do Programa que será executado no RPW, diretório + nome externo.<br>**Importante:** Em virtude do dicionário (Foundation), este parâmetro é limitado a 24 dígitos. |
462
547
  | programEMS5 | boolean | Não | Indica se o programa progress é do EMS5. |
548
+ | programStyle | number | Não | Número que representa o Estilo do Relatório no EMS5. |
463
549
  | programVersion | string | Não | Versão do programa progress. |
464
- | businessParams | Array | Não | Objeto representando a Temp-Table que será enviada ao progress. Ver exemplo do objeto **parametersRpw** no **TotvsScheduleExecutionComponent**. |
550
+ | businessParams | Array | Não | Objeto representando a Temp-Table que será enviada ao progress. |
551
+ | paramDigitDef | Array | Não | Definição da Temp-Table tt-digita. Utilizado apenas pelo EMS2. Para cada campo da tt-digita, deve ser enviado um objeto com o seguinte formato: **{"chave": "string", "tipo": "string" }**. Onde **chave** representa o nome do campo, e **tipo** representa o tipo de dado (exemplo: character, integer, etc...). |
552
+ | paramDigitData | Array | Não | Dados que serão enviados e alimentados na tt-digita. Utilizado apenas pelo EMS2. |
553
+ | paramSelections | Array | Não | Parâmetros de Seleção. Utilizado apenas pelo EMS5. |
465
554
 
466
555
  IExecutionStatus
467
556
  | Nome | Tipo | Descrição |
@@ -713,10 +802,11 @@ Métodos:
713
802
  ---
714
803
 
715
804
  Exemplo de Uso:
805
+
806
+ **Definições no JavaScript:**
716
807
  ```
717
- -- JavaScript --
808
+ // TS da Tela
718
809
 
719
- - TS da Tela -
720
810
  import { FileUtil } from 'dts-backoffice-util';
721
811
 
722
812
  fileBase64: string;
@@ -764,7 +854,8 @@ onConfirmUpload(): void {
764
854
  );
765
855
  }
766
856
 
767
- - TS do Serviço -
857
+ // TS do Serviço
858
+
768
859
  getFile(id: string): Observable<Object> {
769
860
  const url = `/customer/${id}/file`;
770
861
  return this.http.get(url);
@@ -774,9 +865,9 @@ getQrCode(text: string): Observable<Blob> {
774
865
  const url = `/qrcode/download?text=${text}`;
775
866
  return this.http.get(url, { responseType: 'blob' });
776
867
  }
777
-
778
- -- Progress --
779
-
868
+ ```
869
+ **Definições no Progress:**
870
+ ```
780
871
  // Conteúdo do Método que BackEnd que retorna o Arquivo em Base64
781
872
  DEFINE VARIABLE v_dir_arq AS CHARACTER NO-UNDO.
782
873
  DEFINE VARIABLE v_cod_arq AS CHARACTER NO-UNDO.
@@ -1,5 +1,5 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './public-api';
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
5
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHRzLWJhY2tvZmZpY2UtdXRpbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2R0cy1iYWNrb2ZmaWNlLXV0aWwvc3JjL2R0cy1iYWNrb2ZmaWNlLXV0aWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==