Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


01. DADOS GERAIS

Produto:

Solucoes_totvs
SolucaoTOTVS Logística Frete Embarcador

Solucoes_totvs_cross
SolucaoCross

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVS

Linha de Produto:

Linhas_totvs
SegmentoDistribuição
RegionConstrução Projetos
LinhaLinha Datasul

Segmento:

Segmentos_totvs
SegmentoLogística

Módulo:TOTVS
Logística
Frete Embarcador - Gestão de Frete Embarcador (SIGAGFE)
Função:CDF601/CDAPI800 - Integração Datasul x GFE
Ticket:
Não há
-
Requisito/Story/Issue (informe o requisito relacionado) :DLOGGFE-13112


02. SITUAÇÃO/REQUISITO

Permitir o envio de informações específicas para a realização da simulação de frete no SIGAGFE.

03. SOLUÇÃO

Foi necessário a abertura de dois pontos upcsUPCs:

1)

...

 Gerado ponto

...

UPC no programa cdf601, na procedure MessageWS que

...

gera a mensagem que será enviada ao GFE.

  • Código Evento =

...

  • MessageWSCódigo Parâmetro = nota-fiscal-tr
  • Valor Parâmetro = handle da tabela temporária tt-nota-fiscal-tr.

Caso o específico identifique informações específicas que devem ser enviadas para integração, deverá retornar na tabela temporária "tt tt-epc".

  • Código Evento = MessageWS
  • Código Parâmetro = InfAdicional 

...

Segue abaixo exemplo da utilização:

...



Bloco de código
titleExemplo de Utilização
collapsetrue
IF p-ind-event = "MessageWs":U THEN DO:

...



     FIND FIRST tt-epc NO-LOCK

...


     WHERE tt-epc.cod-event = p-ind-event

...


     AND tt-epc.cod-parameter = "nota-fiscal-tr":U NO-ERROR.

...



     IF AVAIL tt-epc THEN DO:

...


     ASSIGN htt1 = WIDGET-HANDLE(tt-epc.val-parameter) NO-ERROR.

...



     IF ERROR-STATUS:ERROR

...

 THEN
     NEXT.

     CREATE BUFFER hBTTNotaFiscalTR FOR TABLE htt1 BUFFER-NAME "tt-nota-fiscal-tr".

...


     CREATE QUERY hQTTNotaFiscalTR.
     hQTTNotaFiscalTR:SET-BUFFERS(hBTTNotaFiscalTR).

...


     IF VALID-HANDLE(hQTTNotaFiscalTR)

...

 THEN
     ASSIGN hQTTNotaFiscalTR:FORWARD-ONLY = YES.

...


     hQTTNotaFiscalTR:QUERY-PREPARE("FOR EACH tt-nota-fiscal-tr").

...


     hQTTNotaFiscalTR:QUERY-OPEN.

...


     hQTTNotaFiscalTR:GET-FIRST.

...



     DO WHILE NOT(hQTTNotaFiscalTR:QUERY-OFF-END):

...



     ASSIGN h-nota-fiscal-tr-char-1 = hBTTNotaFiscalTR:BUFFER-FIELD("char-1").

...



     CREATE tt-epc.

...


     ASSIGN tt-epc.cod-event = p-ind-event

...


     tt-epc.cod-parameter = "InfAdicional"

...


     tt-epc.val-parameter = h-nota-fiscal-tr-char-1:BUFFER-VALUE.

...



     hQTTNotaFiscalTR:GET-NEXT.

...


     END.

...


     END.

...



END.

2)

...

 Gerado ponto

...

UPC no programa

...

CDAPI800, na procedure pi-grava-simulacao.

  • Código Evento = after-create-simul-nota-fisc
  • Código Parâmetro = handle-tt-notas-gerradas
  • Valor Parâmetro = handle da tabela temporária tt-notas-geradas

Não é retornada nenhuma informação ao programa cdapi800.

Segue abaixo exemplo da utilização:

...



Bloco de código
titleExemplo de Utilização
collapsetrue
IF p-ind-event = "after-create-simul-nota-fisc" THEN DO:

...



     FIND FIRST tt-epc

...


     WHERE tt-epc.cod-event = "after-create-simul-nota-fisc"

...


     AND tt-epc.cod-parameter = "handle-tt-notas-geradas" NO-LOCK NO-ERROR.

...


     IF AVAIL tt-epc THEN DO:

...



     ASSIGN htt1 = WIDGET-HANDLE(tt-epc.val-parameter) NO-ERROR.

...


     IF ERROR-STATUS:ERROR

...

 THEN
     NEXT.

     CREATE BUFFER hBTTNotasGeradas FOR TABLE htt1 BUFFER-NAME "tt-notas-geradas".

...


     CREATE QUERY hQTTNotasGeradas.
     hQTTNotasGeradas:SET-BUFFERS(hBTTNotasGeradas).

...


     IF VALID-HANDLE(hQTTNotasGeradas)

...

 THEN
     ASSIGN hQTTNotasGeradas:FORWARD-ONLY = YES.

...


     hQTTNotasGeradas:QUERY-PREPARE("FOR EACH tt-notas-geradas").

...


     hQTTNotasGeradas:QUERY-OPEN.

...


     hQTTNotasGeradas:GET-FIRST.

...



     DO WHILE NOT(hQTTNotasGeradas:QUERY-OFF-END):

...



     ASSIGN h-rw-nota-fiscal = hBTTNotasGeradas:BUFFER-FIELD("rw-nota-fiscal").

...



     FIND FIRST nota-fiscal EXCLUSIVE-LOCK

...


     WHERE rowid(nota-fiscal) = h-rw-nota-fiscal:BUFFER-VALUE NO-ERROR.

...


     IF AVAIL nota-fiscal THEN DO:

...



     ASSIGN i-c =

...

 0
     cDesObs = "".

...



     FOR EACH simul-nota-fisc NO-LOCK

...


     WHERE simul-nota-fisc.cod-estab = nota-fiscal.cod-estabel

...


     AND simul-nota-fisc.cod-ser-nf = nota-fiscal.serie

...


     AND simul-nota-fisc.cod-nota-fisc = nota-fiscal.nr-nota-fis

...

 :

     ASSIGN i-aux =

...

 1
     n-valor-pedagio = 0.

...



     DO i-cont = 1 to 8:

...


     IF TRIM(SUBSTRING(simul-nota-fisc.cod-livre-3,i-aux,20)) <> '' AND trim(SUBSTRING(simul-nota-fisc.cod-livre-3,i-aux + 20,15)) <> ''

...

 THEN
     /*IF TRIM(SUBSTRING(simul-nota-fisc.cod-livre-3,i-aux,20)) = "PEDAGIO" THEN*/

...


     IF TRIM(SUBSTRING(simul-nota-fisc.cod-livre-3,i-aux,20)) MATCHES ("*PEDAGIO*")

...

 THEN
     ASSIGN n-valor-pedagio = decimal(SUBSTRING(simul-nota-fisc.cod-livre-3,i-aux + 20,15)).

...



     ASSIGN i-aux = i-aux + 35.

...


     END.

...



     ASSIGN i-c = i-c + 1.

...



     FIND FIRST transporte NO-LOCK

...


     WHERE transporte.cgc = simul-nota-fisc.cod-cgc-clien NO-ERROR.

...


     IF AVAIL transporte THEN DO:
     ASSIGN c-nome = transporte.nome-abrev.

...


     END.

...



     IF i-c = 1 THEN DO:

...


     ASSIGN cDesObs = "Transportador: " + c-nome + " Valor do Frete: " + STRING(simul-nota-fisc.val-combin-clien).

...


     END.

...



     IF i-c > 1 THEN DO:

...


     ASSIGN cDesObs = cDesObs + "Transportador: " + c-nome + " Valor do Frete: " + STRING(simul-nota-fisc.val-combin-clien).

...


     END.

...



     IF n-valor-pedagio <> 0 THEN DO:

...


     ASSIGN cDesObs = cDesObs + "Valor do Ped gio: " + STRING(n-valor-pedagio).

...


     END.

...



     END.

...



     IF not nota-fiscal.observ-nota MATCHES "*" + cDesObs + "*" THEN DO:

...


     ASSIGN nota-fiscal.observ-nota = nota-fiscal.observ-nota + cDesObs.

...


     END.

...




     END.

...


     hQTTNotasGeradas:GET-NEXT.

...


     END.

...

Passo 01, Passo 02, Passo 03, Passo


END.
Totvs custom tabs box
tabs

04

...

defaultyes
referenciapasso1

...

defaultno
referenciapasso2

...

DEMAIS INFORMAÇÕES

...

Não se aplica.

05. ASSUNTOS RELACIONADOS



Templatedocumentos


HTML
<style>
div.theme-default .ia-splitter #main {
    margin-left: 0px;
}
.ia-fixed-sidebar, .ia-splitter-left {
    display: none;
}
#main {
    padding-left: 10px;
    padding-right: 10px;
    overflow-x: hidden;
}

.aui-header-primary .aui-nav,  .aui-page-panel {
    margin-left: 0px !important;
}
.aui-header-primary .aui-nav {
    margin-left: 0px !important;
}

.aui-tabs.horizontal-tabs>.tabs-menu>.menu-item.active-tab a::after { 
	background: #FF9900; !important 
}

.menu-item.active-tab { 
	border-bottom: none !important; 
}

</style>