dts-backoffice-util 15.3.3 → 15.4.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.
package/README.md CHANGED
@@ -11,8 +11,8 @@ 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
- | v15 | v15 | 15.3.3 |
14
+ |-|-|-|
15
+ | v15 | v15 | 15.4.0 |
16
16
  | v14 | v14 | 14.4.1 |
17
17
  | v6 | v13 | 6.0.2 |
18
18
  | v5 | v12 | 5.0.1 |
@@ -187,35 +187,6 @@ this.menuDatasulService
187
187
  })
188
188
  ```
189
189
 
190
- No HTML usar da seguinte forma:
191
- ```
192
- <app-totvs-schedule-execution
193
- programName="pdapi701"
194
- externalName="pdp/pdapi701.p"
195
- programEMS5="false"
196
- programVersion=""
197
- [parameters]="parametersRpw"
198
- (endExecution)="endExecution($event)">
199
- </app-totvs-schedule-execution>
200
- ```
201
-
202
- **Definição no JavaScript:**
203
- ```
204
- this.parametersRpw = [
205
- { chave: 'destino', valor: 2, tipo: 'integer' },
206
- { chave: 'arquivo', valor: '', tipo: 'character' },
207
- { chave: 'usuario', valor: 'FERNANDO', tipo: 'character' },
208
- { chave: 'perfil', valor: 880, tipo: 'integer' }
209
- ];
210
- ```
211
- **Definição no Progress:**
212
- ```
213
- DEFINE TEMP-TABLE tt-param NO-UNDO
214
- FIELD destino AS INTEGER
215
- FIELD arquivo AS CHARACTER
216
- FIELD usuario AS CHARACTER
217
- FIELD perfil AS INTEGER.
218
- ```
219
190
  Parâmetros:
220
191
 
221
192
  | Nome | Tipo | Obrigatório | Descrição |
@@ -223,8 +194,12 @@ Parâmetros:
223
194
  | programName | string | Sim | Código de Programa cadastrado no menu, do programa que será executado no RPW. |
224
195
  | 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. |
225
196
  | programEMS5 | boolean | Não | Indica se o programa progress é do EMS5. |
197
+ | programStyle | number | Não | Número que representa o Estilo do Relatório no EMS5. |
226
198
  | programVersion | string | Não | Versão do programa progress. |
227
199
  | parameters | Array | Sim | Objeto representando a Temp-Table que será enviada ao progress. |
200
+ | 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...). |
201
+ | paramDigitData | Array | Não | Dados que serão enviados e alimentados na tt-digita. Utilizado apenas pelo EMS2. |
202
+ | paramSelections | Array | Não | Parâmetros de Seleção. Utilizado apenas pelo EMS5. |
228
203
  | disabledParams | boolean | Não | Quando for igual a **"Sim"**, irá desabilitar todos os campos do Agendamento (Data Execução, Servidor, Repetir ocorrência, etc...). |
229
204
  | 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. |
230
205
  | 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. |
@@ -240,23 +215,76 @@ Exemplo de Uso:
240
215
 
241
216
  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.
242
217
 
218
+ **Definições no HTML:**
243
219
  ```
244
- - HTML -
220
+ // EXEMPLO PARA EMS5
245
221
  <app-totvs-schedule-execution #schParam
246
- ...
222
+ programName="rpt_grp_repres"
223
+ externalName="rpt_grp_repres"
224
+ programEMS5="true"
225
+ programStyle="40"
226
+ programVersion="1.00.00.004"
227
+ [parameters]="parametersRpw"
228
+ [paramSelections]="paramSelectionsRpw"
247
229
  (endExecution)="endExecutionSchedule($event)">
248
230
  </app-totvs-schedule-execution>
249
231
 
250
- - TS -
232
+ // EXEMPLO PARA EMS2
233
+ <app-totvs-schedule-execution #schParam
234
+ programName="pdapi701"
235
+ externalName="pdp/pdapi701.p"
236
+ [parameters]="parametersRpw"
237
+ [paramDigitDef]="paramDigitDefRpw"
238
+ [paramDigitData]="paramDigitDataRpw"
239
+ (endExecution)="endExecutionSchedule($event)">
240
+ </app-totvs-schedule-execution>
241
+ ```
242
+ **Definições no JavaScript:**
243
+ ```
251
244
  @ViewChild('schParam', { static: true }) schParam: TotvsScheduleExecutionComponent;
252
- ...
245
+
253
246
  scheduleParams: IScheduleParameters;
254
- ...
247
+ parametersRpw = new Array<any>();
248
+ paramDigitDefRpw = new Array<any>();
249
+ paramDigitDataRpw = new Array<any>();
250
+ paramSelectionsRpw = new Array<any>();
251
+
255
252
  ngOnInit(): void {
256
- ...
257
253
  this.loadLocalStorage();
258
254
  this.schParam.setScheduleParameters(this.scheduleParams);
259
- ...
255
+
256
+ this.createParametersRpw();
257
+ }
258
+
259
+ createParametersRpw(): void {
260
+ // Parâmetros
261
+ this.parametersRpw = [
262
+ { chave: 'destino', valor: 2, tipo: 'integer' },
263
+ { chave: 'arquivo', valor: '', tipo: 'character' },
264
+ { chave: 'usuario', valor: 'FERNANDO', tipo: 'character' },
265
+ { chave: 'perfil', valor: 880, tipo: 'integer' }
266
+ ];
267
+
268
+ // Definição da tt-digita (EMS2)
269
+ this.paramDigitDefRpw = [
270
+ { chave: 'cod-estab', tipo: 'character' },
271
+ { chave: 'cod-ccusto', tipo: 'integer' }
272
+ ];
273
+
274
+ // Dados da tt-digita (EMS2)
275
+ this.paramDigitDataRpw = [
276
+ { "cod-estab": '19', "cod-ccusto": 17 },
277
+ { "cod-estab": '28', "cod-ccusto": 11 },
278
+ { "cod-estab": '73', "cod-ccusto": 90 }
279
+ ];
280
+
281
+ // Seleção (Relatório Regra/Exceção do EMS5)
282
+ this.paramSelectionsRpw = [
283
+ { ind_dwb_set_type: "Regra", cod_dwb_set: "estab",
284
+ cod_dwb_set_initial: "01", cod_dwb_set_final: "FF", log_dwb_rule: true },
285
+ { ind_dwb_set_type: "Exceção", cod_dwb_set: "ccusto",
286
+ cod_dwb_set_initial: "30", cod_dwb_set_final: "35", log_dwb_rule: false }
287
+ ]
260
288
  }
261
289
 
262
290
  endExecutionSchedule(event): void {
@@ -274,6 +302,18 @@ private loadLocalStorage(): void {
274
302
  this.scheduleParams = JSON.parse(localStorage.getItem('param-maint.schParam'));
275
303
  }
276
304
  ```
305
+ **Definições no Progress:**
306
+ ```
307
+ DEFINE TEMP-TABLE tt-param NO-UNDO
308
+ FIELD destino AS INTEGER
309
+ FIELD arquivo AS CHARACTER
310
+ FIELD usuario AS CHARACTER
311
+ FIELD perfil AS INTEGER.
312
+
313
+ DEFINE TEMP-TABLE tt-digita NO-UNDO
314
+ FIELD cod-estab AS CHARACTER
315
+ FIELD cod-ccusto AS INTEGER.
316
+ ```
277
317
 
278
318
  Interfaces:
279
319
 
@@ -315,8 +355,8 @@ Exemplo de Uso:
315
355
 
316
356
  Segue abaixo exemplos da geração de agendamento, busca e acompanhamento da execução.
317
357
 
358
+ **Definições no HTML:**
318
359
  ```
319
- - HTML -
320
360
  <po-lookup
321
361
  p-label="Servidor RPW"
322
362
  p-placeholder="Servidor RPW"
@@ -327,8 +367,9 @@ Segue abaixo exemplos da geração de agendamento, busca e acompanhamento da exe
327
367
  p-field-value="code"
328
368
  [(ngModel)]="executionServer">
329
369
  </po-lookup>
330
-
331
- - TS -
370
+ ```
371
+ **Definições no JavaScript:**
372
+ ```
332
373
  executionServer: string;
333
374
  jobScheduleID: string;
334
375
  executionID: string;
@@ -355,15 +396,46 @@ createSchedule(): void {
355
396
  // Criar um Agendamento para ser Executado "agora"
356
397
  const execParam = new ExecutionParameters();
357
398
  execParam.executionServer = executionServer;
358
- execParam.programName = 'api_executa_carga_dados_carol';
359
- execParam.externalName = 'api_executa_carga_dados_carol';
399
+
400
+ // Exemplo de Parâmetros para o EMS5
401
+ execParam.programName = 'rpt_grp_repres';
402
+ execParam.externalName = 'rpt_grp_repres';
360
403
  execParam.programEMS5 = true;
361
- execParam.programVersion = '1.00.00.001';
404
+ execParam.programStyle = 40;
405
+ execParam.programVersion = '1.00.00.004';
362
406
  execParam.businessParams = [
363
407
  { chave: 'cTipoCarga', valor: 'register', tipo: 'character' },
364
408
  { chave: 'lCargaTotal', valor: false, tipo: 'logical' },
365
409
  { chave: 'dDataCorte', valor: null, tipo: 'date' }
366
410
  ];
411
+ // Seleção (Relatório Regra/Exceção do EMS5)
412
+ execParam.paramSelections = [
413
+ { ind_dwb_set_type: "Regra", cod_dwb_set: "estab",
414
+ cod_dwb_set_initial: "01", cod_dwb_set_final: "FF", log_dwb_rule: true },
415
+ { ind_dwb_set_type: "Exceção", cod_dwb_set: "ccusto",
416
+ cod_dwb_set_initial: "30", cod_dwb_set_final: "35", log_dwb_rule: false }
417
+ ];
418
+
419
+ // Exemplo de Parâmetros para o EMS2
420
+ execParam.programName = 'pdapi701';
421
+ execParam.externalName = 'pdp/pdapi701.p';
422
+ execParam.businessParams = [
423
+ { chave: 'destino', valor: 2, tipo: 'integer' },
424
+ { chave: 'arquivo', valor: '', tipo: 'character' },
425
+ { chave: 'usuario', valor: 'FERNANDO', tipo: 'character' },
426
+ { chave: 'perfil', valor: 880, tipo: 'integer' }
427
+ ];
428
+ // Definição da tt-digita (EMS2)
429
+ execParam.paramDigitDef = [
430
+ { chave: 'cod-estab', tipo: 'character' },
431
+ { chave: 'cod-ccusto', tipo: 'integer' }
432
+ ];
433
+ // Dados da tt-digita (EMS2)
434
+ execParam.paramDigitData = [
435
+ { "cod-estab": '19', "cod-ccusto": 17 },
436
+ { "cod-estab": '28', "cod-ccusto": 11 },
437
+ { "cod-estab": '73', "cod-ccusto": 90 }
438
+ ];
367
439
 
368
440
  this.schedExecSubscription$ = this.scheduleExecution
369
441
  .createExecutionForNow(execParam, true)
@@ -449,6 +521,18 @@ followUpCallBack(execStatus: IExecutionStatus): boolean {
449
521
  return true; // Continua monitorando - retornar "false" para parar o monitoramento
450
522
  }
451
523
  ```
524
+ **Definições no Progress:**
525
+ ```
526
+ DEFINE TEMP-TABLE tt-param NO-UNDO
527
+ FIELD destino AS INTEGER
528
+ FIELD arquivo AS CHARACTER
529
+ FIELD usuario AS CHARACTER
530
+ FIELD perfil AS INTEGER.
531
+
532
+ DEFINE TEMP-TABLE tt-digita NO-UNDO
533
+ FIELD cod-estab AS CHARACTER
534
+ FIELD cod-ccusto AS INTEGER.
535
+ ```
452
536
 
453
537
  Interfaces:
454
538
 
@@ -459,8 +543,12 @@ IExecutionParameters
459
543
  | programName | string | Sim | Código de Programa cadastrado no menu, do programa que será executado no RPW. |
460
544
  | 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. |
461
545
  | programEMS5 | boolean | Não | Indica se o programa progress é do EMS5. |
546
+ | programStyle | number | Não | Número que representa o Estilo do Relatório no EMS5. |
462
547
  | programVersion | string | Não | Versão do programa progress. |
463
- | businessParams | Array | Não | Objeto representando a Temp-Table que será enviada ao progress. Ver exemplo do objeto **parametersRpw** no **TotvsScheduleExecutionComponent**. |
548
+ | businessParams | Array | Não | Objeto representando a Temp-Table que será enviada ao progress. |
549
+ | 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...). |
550
+ | paramDigitData | Array | Não | Dados que serão enviados e alimentados na tt-digita. Utilizado apenas pelo EMS2. |
551
+ | paramSelections | Array | Não | Parâmetros de Seleção. Utilizado apenas pelo EMS5. |
464
552
 
465
553
  IExecutionStatus
466
554
  | Nome | Tipo | Descrição |
@@ -712,10 +800,11 @@ Métodos:
712
800
  ---
713
801
 
714
802
  Exemplo de Uso:
803
+
804
+ **Definições no JavaScript:**
715
805
  ```
716
- -- JavaScript --
806
+ // TS da Tela
717
807
 
718
- - TS da Tela -
719
808
  import { FileUtil } from 'dts-backoffice-util';
720
809
 
721
810
  fileBase64: string;
@@ -763,7 +852,8 @@ onConfirmUpload(): void {
763
852
  );
764
853
  }
765
854
 
766
- - TS do Serviço -
855
+ // TS do Serviço
856
+
767
857
  getFile(id: string): Observable<Object> {
768
858
  const url = `/customer/${id}/file`;
769
859
  return this.http.get(url);
@@ -773,9 +863,9 @@ getQrCode(text: string): Observable<Blob> {
773
863
  const url = `/qrcode/download?text=${text}`;
774
864
  return this.http.get(url, { responseType: 'blob' });
775
865
  }
776
-
777
- -- Progress --
778
-
866
+ ```
867
+ **Definições no Progress:**
868
+ ```
779
869
  // Conteúdo do Método que BackEnd que retorna o Arquivo em Base64
780
870
  DEFINE VARIABLE v_dir_arq AS CHARACTER NO-UNDO.
781
871
  DEFINE VARIABLE v_cod_arq AS CHARACTER NO-UNDO.