Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 8 Current »

 Geração de Lista de Pedidos através de Importação de uma planilha

Situação:

 Lista de Pedidos através de Importação de uma planilha

Possíveis Soluções:

Geração de Lista de Pedidos através de Importação de uma planilha:

R:\ESP2\qgp\MOPD\Output Lista Informacoes Pedidos Imput from csv.p

 

DEF TEMP-TABLE tt-pedido
    FIELD nr-pedcli    LIKE ped-venda.nr-pedcli
    FIELD cod-emitente LIKE ped-venda.cod-emitente.

INPUT FROM "c:\temp\clientes.csv". // Lista de códigos de pedidos e código dos emitentes
REPEAT:
    CREATE tt-pedido.
    IMPORT DELIMITER ";" tt-pedido.
END.
INPUT CLOSE.

OUTPUT TO c:\temp\pedidos.csv.
PUT UNFORMATTED
               "PEDIDO"           ";"
               "COD CLIENTE"      ";"
               "NOME ABREV"       ";"
               "RAZAO SOCIAL"     ";"
               "OBS"              SKIP.
 
FOR EACH tt-pedido WHERE
         tt-pedido.nr-pedcli <> "": //Diferente de branco na tt-pedido
 
    PROCESS EVENTS. // Para não travar a tela quando lê muitos dados
 
    FIND FIRST ped-venda WHERE // find first ler o primeiro item da tabela
               ped-venda.nr-pedcli    = tt-pedido.nr-pedcli AND
               ped-venda.cod-emitente = tt-pedido.cod-emitente NO-LOCK NO-ERROR.
 
    IF AVAIL ped-venda  THEN DO:
 
        FIND emitente WHERE emitente.cod-emitente = ped-venda.cod-emitente NO-LOCK NO-ERROR.
 
        PUT UNFORMATTED                    
                        ped-venda.nr-pedcli               ";"
                        emitente.cod-emitente             ";"     
                        ped-venda.nome-abrev              ";"
                        emitente.nome-emit                ";"
        REPLACE(REPLACE(ped-venda.observacoes,CHR(13),' '),CHR(10) ,' ') SKIP.    
 
    END.
END.
OUTPUT CLOSE.

 

 Geração Lista de Itens Peso 0 CD0903

Situação:

Geração Lista de Itens Peso 0 - CD0903

Possíveis Soluções:

FOR EACH ITEM
    WHERE //ITEM.it-codigo > "500940" AND ITEM.it-codigo < "510004" AND
          ITEM.peso-bruto = 0 AND ITEM.peso-liquido = 0. 

    PUT UNFORMATTED
        ITEM.it-codigo ";"
        ITEM.peso-bruto ";"
        ITEM.peso-liquido SKIP.
END.
OUTPUT CLOSE.

 Geração de Lista de Observações das Notas fiscais dos Pedidos

Situação:

Lista de Observações das Notas fiscais dos Pedidos

Possíveis Soluções:

DEF TEMP-TABLE tt-pedido
FIELD nr-pedcli LIKE nota-fiscal.nr-pedcli.
DEF VAR observa AS CHAR.
INPUT FROM "v:\temp\pedidos.csv". // Lista de códigos de pedidos e código dos emitentes

REPEAT:
    CREATE tt-pedido.
    IMPORT DELIMITER ";" tt-pedido.
END.
INPUT CLOSE.
 
OUTPUT TO v:\temp\obs_nf_ped.csv.
PUT UNFORMATTED
       "PEDIDO"         ";"
       "NOTA FISCAL"    ";"
       "NF SERIE"       ";"
       "NF ESTAB"       ";"
       "OBSERVACOES"    SKIP.
 
FOR EACH tt-pedido WHERE
         tt-pedido.nr-pedcli <> "":  //Diferente de branco na tt-pedido
 
    PROCESS EVENTS.                         // Para não travar a tela quando lê muitos dados
 
    FIND FIRST nota-fiscal WHERE           // find first ler o primeiro item da tabela
               nota-fiscal.dt-emis   >= 01/01/2023 AND
               nota-fiscal.dt-cancela = ? AND
               nota-fiscal.cod-estabel = "04" AND
               nota-fiscal.nr-pedcli = tt-pedido.nr-pedcli NO-LOCK NO-ERROR.
 
    IF AVAIL nota-fiscal THEN DO:
 
        ASSIGN observa = TRIM(nota-fiscal.observ-nota).
        ASSIGN observa = REPLACE(observa,CHR(13)," "). /*enter*/
        ASSIGN observa = REPLACE(observa,CHR(10)," "). /*line*/
        ASSIGN observa = REPLACE(observa,CHR(9)," "). /*tab*/
        ASSIGN observa = REPLACE(observa,CHR(32),""). /*espaço*/

        PUT UNFORMATTED
        nota-fiscal.nr-pedcli     ";"
        nota-fiscal.nr-nota-fis   ";"
        nota-fiscal.serie         ";"
        nota-fiscal.cod-estabel   ";"
        observa SKIP.
 
    END.
END.
OUTPUT CLOSE.

 Relatório de Cadastro de Usuários TOTVS MOUT073

Situação:

Relatório de Cadastro de Usuários TOTVS MOUT073

Possíveis Soluções:

Gerar Relatório de Cadastro de Usuários TOTVS MOUT073:

Relatório de usuários para auditoria, inclusive com os acessos por empresa e estabelecimento

Lista de usuários Datasul:

 Geração de Lista de Clientes e Fornecedores

Situação:

 exportação de usuários atuais do grupo 35 Força de venda do Totvs/ERP:

 Codigo Totvs

Nome

Nome Abrev

Telefone(s)

Telefone

Email

CPF

Endereço

Bairro

CEP

Cidade

UF

Endereço Completo

Possíveis Soluções:

valor 1 -- somente clientes

valor 2 -- somente fornecedores

valor 3 -- cliente e fornecedor.

 

R:\ESP2\qgp\Lista de Clientes Output.p

 

DEF VAR l-ctrl AS LOGICAL FORMAT "Sim/Nao" LABEL "Modal.Frete FOB" NO-UNDO.
 
OUTPUT TO c:\temp\clientes.csv.
 
PUT UNFORMATTED
   "CODIGO TOTVS"     ";"
   "NOME ABREV"       ";"
   "RAZAO SOCIAL"     ";"
   "GRUPO"            ";"
   "BANCO"            ";"
   "AGENCIA"          ";"
   "CONTA CORRENTE"   ";"
   "PREFERENCIAL"     ";"
   "TELEFONE 1"       ";"
   "TELEFONE 2"       ";"
   "E-MAIL"           ";"
   "CNPJ ou CPF"      ";"
   "INSC.ESTADUAL"    ";"
   "DATA IMPLANT"     ";"
   "MODALIDADE FRETE" ";"
   "CIDADE"           ";"
   "CEP"              ";"
   "ESTADO"           ";"
   "ENDERECO"         ";"
   "BAIRRO"           SKIP.
 
    FOR EACH  emitente NO-LOCK
      WHERE emitente.cod-emitente = 950449.
      // WHERE emitente.identific <> 2. // valor 1 -- clientes, 2 -- fornecedores, 3 - cliente e fornecedor.
      //  WHERE emitente.data-implant >05/23/2023: //mê / dia / ano 10/01/1996
      //  WHERE emitente.cod-gr-cli = 35.
       ASSIGN l-ctrl = NO.
FIND FIRST cta-emitente WHERE cta-emitente.cod-emitente = emitente.cod-emitente NO-LOCK NO-ERROR.
    IF AVAIL cta-emitente THEN ASSIGN l-ctrl = moe-emitente.ind-modal-frete-fob.
FIND FIRST moe-emitente WHERE moe-emitente.cod-emitente = emitente.cod-emitente NO-LOCK NO-ERROR.
    IF AVAIL moe-emitente THEN ASSIGN l-ctrl = moe-emitente.ind-modal-frete-fob.
       
    PUT UNFORMATTED                    
        emitente.cod-emitente               ";"
        emitente.nome-abrev                 ";"
        emitente.nome-emit                  ";"
        emitente.cod-gr-cli                 ";"
        cta-emitente.cod-banco              ";"
        cta-emitente.agencia                ";"
        cta-emitente.conta-corrente         ";"
        cta-emitente.preferencial           ";"
        emitente.telefone[1]                ";"
        emitente.telefone[2]                ";"
        REPLACE(emitente.e-mail,';',' ')    ";"  
        emitente.cgc                        ";"
        emitente.ins-estadual               ";"
        emitente.data-implant               ";"
        l-ctrl                              ";"
        emitente.cidade                     ";"
        emitente.cep                        ";"
        emitente.estado                     ";"
        REPLACE(emitente.endereco,';',' ')  ";"
        emitente.bairro                     SKIP.                                 

END.
OUTPUT CLOSE.

 

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

OUTPUT TO c:\temp\fornecedores.csv.

 

PUT UNFORMATTED
   "CODIGO TOTVS" ";"
   "NOME ABREV" ";"
   "RAZAO SOCIAL" ";"
   "GRUPO" ";"
   "BANCO" ";"
   "AGENCIA" ";"
   "CONTA CORRENTE" ";"
   "PREFERENCIAL" ";"
   "TELEFONE 1" ";"
   "TELEFONE 2" ";"
   "E-MAIL" ";"
   "CNPJ ou CPF" ";"
   "INSC.ESTADUAL" ";"
   "DATA IMPLANT" ";"
   "CIDADE" ";"
   "CEP" ";"
   "ESTADO" ";"
   "ENDERECO" ";"
   "BAIRRO" SKIP.
 
    FOR EACH  emitente NO-LOCK
         WHERE emitente.identific <> 1. // valor 1 -- clientes, 2 -- fornecedores, 3 - cliente e fornecedor.
        // WHERE emitente.data-implant >07/01/2023: //mê / dia / ano 10/01/1996
        //  WHERE emitente.cod-gr-cli = 35.
    FIND FIRST cta-emitente WHERE cta-emitente.cod-emitente = emitente.cod-emitente NO-LOCK NO-ERROR.
 
    IF AVAIL cta-emitente THEN
 
        PUT UNFORMATTED
        emitente.cod-emitente ";"
        emitente.nome-abrev ";"
        emitente.nome-emit ";"
        emitente.cod-gr-cli ";"
        "'" STRING(cta-emitente.cod-banco,"999") "'" ";"
        "'" STRING(cta-emitente.agencia,"9999999") "'" ";"
        "'" STRING(cta-emitente.conta-corrente,"99999999999") "'" ";"
        cta-emitente.preferencial ";"
        emitente.telefone[1] ";"
        emitente.telefone[2] ";"
        REPLACE(emitente.e-mail,';',' ') ";"  
        emitente.cgc ";"
        emitente.ins-estadual ";"
        emitente.data-implant ";"
        emitente.cidade ";"
        emitente.cep ";"
        emitente.estado ";"
        REPLACE(emitente.endereco,';',' ') ";"
        emitente.bairro SKIP. 
 
    ELSE
        PUT UNFORMATTED
        emitente.cod-emitente ";"
        emitente.nome-abrev ";"
        emitente.nome-emit ";"
        emitente.cod-gr-cli ";"
        "" ";"
        "" ";"
        "" ";"
        "" ";"
        emitente.telefone[1] ";"
        emitente.telefone[2] ";"
        REPLACE(emitente.e-mail,';',' ') ";"  
        emitente.cgc ";"
        emitente.ins-estadual ";"
        emitente.data-implant ";"
        emitente.cidade ";"
        emitente.cep ";"
        emitente.estado ";"
        REPLACE(emitente.endereco,';',' ') ";"
        emitente.bairro SKIP.
 
END.
OUTPUT CLOSE.

 

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

OUTPUT TO i:\Leopoldo\clientes_2023-10-06.csv.

 

PUT UNFORMATTED
   "COD TOTVS" ";"
   "COD CRM" ";"
   "NOME ABREV" ";"
   "NOME COMPLETO" ";"
   "GRUPO" ";"
   "E-MAIL" ";"
   "CNPJ ou CPF" ";"
   "INSC.ESTADUAL" ";"
   "CIDADE" ";"
   "CEP" ";"
   "ESTADO" ";"
   "ENDERECO" ";"
   "BAIRRO" SKIP.
 
    FOR EACH  emitente NO-LOCK
        WHERE emitente.identific <> 2
        AND emitente.cod-emitente = 959697. // valor 1 -- clientes, 2 -- fornecedores, 3 - cliente e fornecedor.
        FOR EACH moe-emitente
        WHERE moe-emitente.cod-emitente = emitente.cod-emitente.
 
    PUT UNFORMATTED                    
        emitente.cod-emitente  ";"
        moe-emitente.codigo-crm ";"
        emitente.nome-abrev  ";"
        emitente.nome-emit  ";"
        emitente.cod-gr-cli  ";"
        REPLACE(REPLACE(REPLACE(emitente.e-mail,CHR(13),' '),CHR(10),' '),';',' ')  ";"
        emitente.cgc  ";"
        emitente.ins-estadual  ";"
        emitente.cidade  ";"
        emitente.cep  ";"
        emitente.estado  ";"
        REPLACE(REPLACE(REPLACE(emitente.endereco,CHR(13),' '),CHR(10),' '),';',' ')  ";"
        emitente.bairro  SKIP.
 
        END.
END.
OUTPUT CLOSE.

 Excluir componente da Estrutura Kit

Situação:

 Remover da estrutura dos kits abaixo, os itens informados:

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.

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.

 

 Relatório de Prestadores MORE048

Situação:

Relatório de Prestadores MORE048

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.

 DEF TEMP-TABLE tt-item

Situação:

TABLE tt-item

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.

 Lista Cliente Local Entrega

Situação:

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

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.

 Lista Itens Valor MAT GGF MOB

Situação:

Lista Itens Valor MAT GGF MOB

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].

 

 Relatório Pedidos Compras de pagamentos por usuário e pedido

Situação:

SANTIBR-68976 Relatório de pedidos de pagamentos por usuário e pedido

Olá, tudo bem? Por favor, preciso de um relatório de pedidos de pagamentos com as seguintes premissas:

Empresa: Santillana Educação (Matriz) 98 Período: 2023 Emitido pelos usuários: dmarques, allima, acomar, vbrito e nataliac.

No relatório deve constar o número do pedido, o valor do pedido e a data de geração do pedido.

Possíveis Soluções:

Pode usar o relatório CC0406 que tem todas as informações solicitadas.

 

Situação

1 - Não Confirmada

2 - Confirmada

3 - Cotada

4 - Eliminada

5 - Em Cotação

6 - Recebida

OUTPUT TO i:\Leopoldo\pedidos_compras_98.csv.
PUT UNFORMATTED
    "PEDIDO" ";"
    "COD CLIENTE" ";"
    "NOME ABREV" ";"
    "EMERGENCIAL" ";"
    "USUARIO" ";"
    "DT PEDIDO" ";"
    "ESTAB" ";"
    "ORDEM" ";"
    "ITEM" ";"
    "SITUACAO" ";"
    "QTDE" ";"
    "PRECO" ";"
    "TOTAL" SKIP.

FOR EACH pedido-compr 
   WHERE pedido-compr.responsavel = "dmarques"
      OR pedido-compr.responsavel = "allima"
      OR pedido-compr.responsavel = "acomar"
      OR pedido-compr.responsavel = "nataliac"
      OR pedido-compr.responsavel = "vanessab"
     AND pedido-compr.cod-estab-gestor ="98"
     AND pedido-compr.data-pedido >= 01/01/2023 NO-LOCK.
    FOR EACH emitente
        WHERE emitente.cod-emitente = pedido-compr.cod-emitente.
        FOR EACH ordem-compra
            WHERE ordem-compra.num-pedido = pedido-compr.num-pedido.
        PUT UNFORMATTED 
        pedido-compr.num-pedido   ";"
        pedido-compr.cod-emitente ";"
        emitente.nome-abrev       ";"
        pedido-compr.emergencial  ";"
        pedido-compr.responsavel  ";"
        pedido-compr.data-pedido  ";"
        ordem-compra.cod-estabel  ";"
        ordem-compra.numero-ordem ";"
        ordem-compra.it-codigo    ";"
        ordem-compra.situacao     ";"
        ordem-compra.qt-solic     ";"
        ordem-compra.preco-unit   ";"
        ordem-compra.qt-solic * ordem-compra.preco-unit SKIP.
        END.
    END.
END.

FOR EACH pedido-compr 
   WHERE pedido-compr.num-pedido = 233409
     AND pedido-compr.cod-estab-gestor ="98"
     AND pedido-compr.data-pedido >= 01/01/2023 NO-LOCK.
    FOR EACH emitente
        WHERE emitente.cod-emitente = pedido-compr.cod-emitente.
        FOR EACH ordem-compra
            WHERE ordem-compra.num-pedido = pedido-compr.num-pedido.
    DISP 
        pedido-compr.num-pedido
        pedido-compr.cod-emitente
        emitente.nome-abrev
        pedido-compr.emergencial
        pedido-compr.responsavel
        pedido-compr.data-pedido
        ordem-compra.cod-estabel
        ordem-compra.numero-ordem
        ordem-compra.it-codigo
        ordem-compra.situacao
        ordem-compra.qt-solic
        ordem-compra.preco-unit WITH 1 COL 2 DOWN SCROLLABLE.
        END.
    END.

  • No labels