Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Expand
titleExcluir componente da Estrutura Kit
Panel
panelIconId1f321
panelIcon:thermometer:
panelIconText🌡️
bgColor#FFEBE6

Situação:

 Remover da estrutura dos kits abaixo, os itens informados:

Tip

Possíveis Soluções:

Conforme o programa R:\ESP2\mop\mocg020e.p, os componentes / itens iniciados com "5" e "6" não interferem na abertura dos kits e na margem do D.A. e portanto podem ser excluídos da estrutura.

 

R:\ESP2\qgp\Excluir Componentes Estrutura Kit.p

 

DEF TEMP-TABLE tt-it

    FIELD it-cod LIKE estrutura.it-codigo

    FIELD es-cod LIKE estrutura.es-codigo.

 

        INPUT FROM "c:\temp\kit.csv".

        REPEAT:

            CREATE tt-it.

            IMPORT DELIMITER ";"tt-it.

        END.

        INPUT CLOSE.

 

    OUTPUT TO c:\temp\estrutura.csv.

    PUT UNFORMATTED

        "it-codigo" ";"

        "es-codigo" SKIP.

       

FOR EACH tt-it

    WHERE tt-it.it-cod <> "":

    

    PROCESS EVENTS.

       

    FIND FIRST estrutura

        WHERE estrutura.it-codigo = tt-it.it-cod AND

              estrutura.es-codigo = tt-it.es-cod.

   

    IF AVAIL estrutura THEN DO:

       

    PUT UNFORMATTED

        estrutura.it-codigo ";"

        estrutura.es-codigo SKIP.

 

        // DELETE estrutura.

    END.

END.

View file
nameestrutura.csv
View file
namekit.csv

kit foi o lido e estrutura o que foi excluído.

 

Para excluir apenas um item

 

FOR EACH estrutura

   WHERE estrutura.it-codigo = "779000708" AND

         estrutura.es-codigo = "532869".

   

    DISP estrutura.it-codigo

         estrutura.es-codigo.

 

    //DELETE estrutura.

END.

 

Expand
titleRelatório de Prestadores MORE048
Panel
panelIconId1f321
panelIcon:thermometer:
panelIconText🌡️
bgColor#FFEBE6

Situação:

Relatório de Prestadores MORE048

Tip

Possíveis Soluções:

DEF VAR nome-contr  LIKE mo-adp-responsavel.nome.

DEF VAR nome-dir    LIKE mo-adp-responsavel.nome.

DEF VAR nome-gestor LIKE mo-adp-responsavel.nome.

 

OUTPUT TO c:\temp\prestadores-santillana.csv.

 

PUT UNFORMATTED

       "Contrato"  ";"

       "Prestador" ";"

       "Nome"  ";"

       "Tipo"  ";"

       "Admissao"  ";"

       "Renovacao" ";"

       "Termino"   ";"

       "Prazo" ";"

       "Avisar"    ";"

       "Dt Distrato"   ";"

       "Tp Distrato"   ";"

       "Item"  ";"

       "Descricao"  ";"

       "Funcao"    ";"

       "Vl Contrato" ";"

       "VR"    ";"

       "Estab"   ";"

       "Conta" ";"

       "Centro de Custo"  ";"

       "Situacao" ";"

       "Contratante"   ";"

       "Nome"   ";"

       "Diretor"    ";"

       "Nome"   ";"

       "Gestor" ";"

       "Nome"   SKIP.

 

FOR EACH mo-adp-contrato

    WHERE /*cod-contrato = 2 NO-LOCK: */

          mo-adp-contrato.dt-inicio >= 06/01/2019 AND

          mo-adp-contrato.dt-termino <= 04/30/2021 NO-LOCK:

 

    FIND FIRST mo-adp-responsavel

        WHERE mo-adp-responsavel.cod-resp = mo-adp-contrato.cod-resp-padrao NO-LOCK NO-ERROR.

    IF AVAIL mo-adp-responsavel THEN

        ASSIGN nome-contr = mo-adp-responsavel.nome.

 

    FIND FIRST mo-adp-responsavel

        WHERE mo-adp-responsavel.cod-resp = mo-adp-contrato.cod-resp-contrato NO-LOCK NO-ERROR.

    IF AVAIL mo-adp-responsavel THEN

        ASSIGN nome-dir = mo-adp-responsavel.nome.

 

    FIND FIRST mo-adp-responsavel

        WHERE mo-adp-responsavel.cod-resp = mo-adp-contrato.cod-resp-prestador NO-LOCK NO-ERROR.

    IF AVAIL mo-adp-responsavel THEN

        ASSIGN nome-gestor = mo-adp-responsavel.nome.

 

    FIND FIRST emitente

        WHERE emitente.cod-emitente = mo-adp-contrato.cod-emitente NO-LOCK NO-ERROR.

 

    FIND FIRST ITEM

        WHERE ITEM.it-codigo = mo-adp-contrato.tipo-servico NO-LOCK NO-ERROR.

 

    PUT UNFORMATTED

         cod-contrato                ";"

         emitente.cod-emitente       ";"

         emitente.nome-emit          ";"

         emitente.natureza           ";"

         dt-admissao                 ";"

         dt-inicio                   ";"

         dt-termino                  ";"

         prazo-contrato              ";"

         aviso-renovacao             ";"

         dt-distrato                 ";"

         tipo-distrato               ";"

         tipo-servico                ";"

         ITEM.desc-item              ";"

         mo-adp-contrato.funcao      ";"

         vl-contrato                 ";"

         ind-vr                      ";"

         mo-adp-contrato.cod-estabel ";"

         mo-adp-contrato.ct-codigo   ";"

         mo-adp-contrato.sc-codigo   ";"

         situacao                    ";"         //2 Impresso, 9 Distratado

         cod-resp-padrao             ";"

         nome-contr                  ";"

         cod-resp-contrato           ";"

         nome-dir                    ";"

         cod-resp-prestador          ";"

         nome-gestor SKIP.

END.

OUTPUT CLOSE.

 

 

******************************************************

 

DEF VAR nome-contr  LIKE mo-adp-responsavel.nome.

DEF VAR nome-dir    LIKE mo-adp-responsavel.nome.

DEF VAR nome-gestor LIKE mo-adp-responsavel.nome.

 

FOR EACH mo-adp-contrato

    WHERE cod-contrato = 2 NO-LOCK: /* AND

          mo-adp-contrato.dt-inicio >= 06/01/2010 AND

          mo-adp-contrato.dt-termino <= 04/30/2024 NO-LOCK:*/

 

    FIND FIRST mo-adp-responsavel

        WHERE mo-adp-responsavel.cod-resp = mo-adp-contrato.cod-resp-padrao NO-LOCK NO-ERROR.

    IF AVAIL mo-adp-responsavel THEN

        ASSIGN nome-contr = mo-adp-responsavel.nome.

 

    FIND FIRST mo-adp-responsavel

        WHERE mo-adp-responsavel.cod-resp = mo-adp-contrato.cod-resp-contrato NO-LOCK NO-ERROR.

    IF AVAIL mo-adp-responsavel THEN

        ASSIGN nome-dir = mo-adp-responsavel.nome.

 

    FIND FIRST mo-adp-responsavel

        WHERE mo-adp-responsavel.cod-resp = mo-adp-contrato.cod-resp-prestador NO-LOCK NO-ERROR.

    IF AVAIL mo-adp-responsavel THEN

        ASSIGN nome-gestor = mo-adp-responsavel.nome.

 

    FIND FIRST emitente

        WHERE emitente.cod-emitente = mo-adp-contrato.cod-emitente NO-LOCK NO-ERROR.

 

    FIND FIRST ITEM

        WHERE ITEM.it-codigo = mo-adp-contrato.tipo-servico NO-LOCK NO-ERROR.

 

    DISP cod-contrato   

         emitente.cod-emitente

         emitente.nome-emit

         emitente.natureza

         dt-admissao

         dt-inicio  

         dt-termino 

         prazo-contrato

         aviso-renovacao

         dt-distrato

         tipo-distrato

         tipo-servico

         ITEM.desc-item

         mo-adp-contrato.funcao 

         vl-contrato

         ind-vr

         mo-adp-contrato.cod-estabel

         conta-contabil 

         mo-adp-contrato.ct-codigo

         mo-adp-contrato.sc-codigo

         situacao //2 Impresso, 9 Distratado

         cod-resp-padrao

         nome-contr

         cod-resp-contrato

         nome-dir

         cod-resp-prestador

         nome-gestor   WITH WIDTH 300 1 COL.

END.

 

*************************************************************

 

DEF VAR vl-total   LIKE tit_ap.val_origin_tit_ap.

DEF VAR dt-pagto   LIKE tit_ap.dat_ult_pagto.

DEF VAR qtde-pagto AS INTEGER.

 

OUTPUT TO c:\temp\prestadores-santillana.csv.

 

PUT UNFORMATTED

    "Contrato"  ";"

    "Prestador" ";"

    "Nome"  ";"

    "Tipo"  ";"

    "Admissao"  ";"

    "Renovacao" ";"

    "Termino"   ";"

    "Prazo" ";"

    "Avisar"    ";"

    "Dt Distrato"   ";"

    "Tp Distrato"   ";"

    "Item"  ";"

    "Funcao"    ";"

    "Vl Contrato" ";"

    "VR"    ";"

    "Estabelecimento"   ";"

    "Conta" ";"

    "Dt Pagto"  ";"

    "Vl Pago"   ";"

    "Qtde Pagto"    ";"

    "Centro de Custo"  ";"

    "CC Descricao" SKIP.

 

FOR EACH mo-adp-contrato NO-LOCK: /* WHERE 

         mo-adp-contrato.cod-emitente = 32697:*/

 

    PROCESS EVENTS.

 

    ASSIGN vl-total = 0

           qtde-pagto = 0.

 

    FOR EACH tit_ap NO-LOCK WHERE

             tit_ap.cdn_fornecedor = mo-adp-contrato.cod-emitente AND

             tit_ap.dat_emis_docto >= mo-adp-contrato.dt-admissao AND

             tit_ap.dat_emis_docto >= 06/01/2019 AND

             tit_ap.dat_emis_docto <= 04/30/2021 AND

            (tit_ap.cod_espec_docto = "RA" OR

             tit_ap.cod_espec_docto = "NC"):

 

        ASSIGN vl-total = vl-total + tit_ap.val_origin_tit_ap.

               qtde-pagto = qtde-pagto + 1.

 

    END.

 

    FIND FIRST emitente WHERE

               emitente.cod-emitente = mo-adp-contrato.cod-emitente NO-LOCK NO-ERROR.

 

    IF AVAIL emitente THEN DO:

 

        ASSIGN dt-pagto = ?.

 

        FIND FIRST tit_ap WHERE

                   tit_ap.cdn_fornecedor = mo-adp-contrato.cod-emitente NO-LOCK NO-ERROR.

 

        IF AVAIL tit_ap THEN

 

            ASSIGN dt-pagto = tit_ap.dat_ult_pagto.

 

        ELSE

 

            ASSIGN dt-pagto = ?.

 

            PUT cod-contrato    ";"

                emitente.cod-emitente   ";"

                emitente.nome-emit  ";"

                emitente.natureza   ";"

                dt-admissao ";"

                dt-inicio   ";"

                dt-termino  ";"

                prazo-contrato ";"

                aviso-renovacao ";"

                dt-distrato ";"

                tipo-distrato   ";"

                tipo-servico    ";"

                funcao  ";"

                vl-contrato ";"

                ind-vr ";"

                cod-estabel ";"

                conta-contabil  ";"

                dt-pagto    ";"

                vl-total    ";"

                qtde-pagto  ";".

           

    END.

 

    FIND FIRST emscad.ccusto WHERE

               ccusto.cod_ccusto = mo-adp-contrato.sc-codigo NO-LOCK NO-ERROR.

 

    IF AVAIL ccusto THEN

 

        PUT ccusto.cod_ccusto ";"

            ccusto.des_tit_ctbl SKIP.

   

    ELSE

 

        PUT "" ";"

            "" SKIP.

        

END.

Expand
titleDEF TEMP-TABLE tt-item
Panel
panelIconId1f321
panelIcon:thermometer:
panelIconText🌡️
bgColor#FFEBE6

Situação:

TABLE tt-item

Tip

Possíveis Soluções:

DEF TEMP-TABLE tt-item

    FIELD nr-item    LIKE mocd-it-sape-int.campo1.

INPUT FROM "I:\Leopoldo\item_sape.csv".

REPEAT:

    CREATE tt-item.

    IMPORT DELIMITER ";" tt-item.

END.

INPUT CLOSE.

 

OUTPUT TO I:\Leopoldo\itens_sape.csv.

PUT UNFORMATTED

    "campo1" ";"

    "campo9" SKIP.

   

FOR EACH tt-item WHERE

         tt-item.nr-item <> "":

 

    PROCESS EVENTS.

        FIND FIRST mocd-it-sape-int WHERE

                   mocd-it-sape-int.campo1 = tt-item.nr-item.

        IF AVAIL mocd-it-sape-int THEN DO:

            PUT UNFORMATTED

                campo1 ";"

                campo2 SKIP.

        END.

END.

 

 

DEF TEMP-TABLE tt-item

    FIELD nr-item    LIKE item.it-codigo.

INPUT FROM "I:\Leopoldo\item_sape.csv".

REPEAT:

    CREATE tt-item.

    IMPORT DELIMITER ";" tt-item.

END.

INPUT CLOSE.

 

OUTPUT TO I:\Leopoldo\itens_totvs.csv.

PUT UNFORMATTED

    "item código" SKIP.

   

FOR EACH tt-item WHERE

         tt-item.nr-item <> "":

 

    PROCESS EVENTS.

        FIND FIRST ITEM WHERE

                   ITEM.it-codigo = tt-item.nr-item.

        IF AVAIL ITEM THEN DO:

            PUT UNFORMATTED

                it-codigo SKIP.

        END.

END.

Expand
titleLista Cliente Local Entrega
Panel
panelIconId1f321
panelIcon:thermometer:
panelIconText🌡️
bgColor#FFEBE6

Situação:

QUERY do CD0705 contendo as seguintes informações: Código Emitente e Código de Entrega (Exemplo: Padrão, Local-01)

Tip

Possíveis Soluções:

 

OUTPUT TO c:\temp\cliente_cod_entrega.csv.

 

PUT UNFORMATTED

   "CODIGO TOTVS" ";"

   "NOME ABREV" ";"

   "RAZAO SOCIAL" ";"

   "CNPJ ou CPF" ";"

   "COD ENTREGA" SKIP.

 

FOR EACH emitente

    WHERE emitente.identific <> 2. // valor 1 -- clientes, 2 -- fornecedores, 3 - cliente e fornecedor.

     FOR EACH loc-entr WHERE loc-entr.nome-abrev = emitente.nome-abrev NO-LOCK.

/*          DISP emitente.cod-emitente  */

/*               loc-entr.cod-entrega.  */

 

PUT UNFORMATTED

        emitente.cod-emitente ";"

        emitente.nome-abrev ";"

        emitente.nome-emit ";"

        emitente.cgc ";"

        loc-entr.cod-entrega SKIP. 

     END.

END.

Expand
titleLista Itens Valor MAT GGF MOB
Panel
panelIconId1f321
panelIcon:thermometer:
panelIconText🌡️
bgColor#FFEBE6

Situação:

Lista Itens Valor MAT GGF MOB

Tip

Possíveis Soluções:

FOR EACH pr-it-per

   WHERE it-codigo = "530296" AND

         cod-estabel = "99" AND

         periodo = 09/30/2023:

    DISP cod-estabel

         it-codigo

         periodo

         val-unit-mat-m[1]

         val-unit-ggf-m[1]

         val-unit-mat-m[1]

         val-unit-mob-m[1] WITH SCROLLABLE.

END.

 

 

OUTPUT TO i:\leopoldo\ValorMobGGFSantillana.csv.

PUT "Estab;Periodo;Item;Vl Mat; Vl GGF; Vl MOB" SKIP.

 

FOR EACH pr-it-per WHERE  

         pr-it-per.periodo = 09/30/2023 AND

        (pr-it-per.val-unit-ggf-m[1] <> 0 OR

         pr-it-per.val-unit-mob-m[1] <> 0) NO-LOCK: // NO-ERROR.

 

    PROCESS EVENTS.

 

    EXPORT DELIMITER ";"

 

        pr-it-per.cod-estabel

        pr-it-per.periodo

        pr-it-per.it-codigo

        pr-it-per.val-unit-mat-m[1]

        pr-it-per.val-unit-ggf-m[1]

        pr-it-per.val-unit-mob-m[1].