PERGUNTAS E RESPOSTAS
 
Bem Vindo, Visitante  Todos os Fórums
  ADVPL
Enviar para a impressoraImprimir  Enviar e-mail para um amigoEnviar Para um Amigo
Precisa estar Logado

Subject Assunto:
Erro: Opção não disponível no Protheus
Versão:
.
Plataforma:
.
Complemento:
Protheus
DB:
.
Complemento:
ADVPL
LinkedIn
Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário LUCADVPL LUCADVPL em 06/02/2024, 18:51 h
Local: SP  Registro: 05/02/2024  Postagens: 5
Fala galera, tudo bem? Estou fazendo uma função para exportar os dados de uma tabela customizada(SZ1) para a tabela SA1, e estou com o erro: "Opção não disponível no Protheus Função: xMata Called by U_EXPSZ1"

Segue meu Fonte:

User Function EXPSZ1()
     Local dados := {}
     cCod    := SZ1->Z1_COD
     cLoja   := SZ1->Z1_LOJA
     cNome   := SZ1->Z1_NOME
     cNReduz := SZ1->Z1_NREDUZ
     cTipo   := SZ1->Z1_TIPO
     cEnd    := SZ1->Z1_END
     cBairro := SZ1->Z1_BAIRRO
     cEst    := SZ1->Z1_EST
     cMun    := SZ1->Z1_MUN


     DBSelectArea("SZ1")
     SZ1->(DbSetOrder(1))
     SZ1->(DbGoTop())

     While !SZ1->(Eof())
          aAdd(dados, SZ1->Z1_COD)
          aAdd(dados, SZ1->Z1_LOJA)
          aAdd(dados, SZ1->Z1_NOME)
          aAdd(dados, SZ1->Z1_NREDUZ)
          aAdd(dados, SZ1->Z1_TIPO)
          aAdd(dados, SZ1->Z1_END)
          aAdd(dados, SZ1->Z1_BAIRRO)
          aAdd(dados, SZ1->Z1_EST)
          aAdd(dados, SZ1->Z1_MUN)
          SZ1->(DbSkip())
          xMata(cCod, cLoja, cNome, cNReduz, cTipo, cEnd, cBairro, cEst, cMun)
     EndDo
return

User Function xMata(cCod, cLoja, cNome, cNReduz, cTipo, cEnd, cBairro, cEst, cMun)
     
     
     Local aDados := {}     

     Local aSA1Auto := {}     // cabeçalho
     Local aAI0Auto := {}     // itens
     Local nOpcAuto := 3      // 5.excluir - 3.inserir
     Local lRet := .T.

     Private lMsErroAuto := .F.

     //lRet := RpcSetEnv("T1","D MG 01","Admin")    //abertura de ambiente para rotinas automáticas, permitindo definir empresa e filial

     If lRet

          //----------------------------------
          // Dados do Cliente                 |
          //----------------------------------
         aAdd(aSA1Auto,{"A1_COD" ,Upper(AllTrim(cCod)) ,Nil})
        aAdd(aSA1Auto,{"A1_LOJA" ,Upper(AllTrim(cLoja)) ,Nil})
          aAdd(aSA1Auto,{"A1_NOME" ,Upper(AllTrim(cNome)) ,Nil})
          aAdd(aSA1Auto,{"A1_NREDUZ" ,Upper(AllTrim(cNReduz)) ,Nil})
          aAdd(aSA1Auto,{"A1_TIPO" ,Upper(AllTrim(cTipo)) ,Nil})
          aAdd(aSA1Auto,{"A1_END" ,Upper(AllTrim(cEnd)) ,Nil})
          aAdd(aSA1Auto,{"A1_BAIRRO" ,Upper(AllTrim(cBairro)) ,Nil})
          aAdd(aSA1Auto,{"A1_EST" ,Upper(AllTrim(cEst)) ,Nil})
          aAdd(aSA1Auto,{"A1_MUN" ,Upper(AllTrim(cMun)) ,Nil})
          //-------------------A-------------------------------------
          // Dados do Complemento do Cliente                         |
          //---------------------------------------------------------
          aAdd(aAI0Auto,{"AI0_SALDO" ,30 ,Nil})

          //------------------------------------
          // Chamada para cadastrar o cliente. |
          //------------------------------------
          MSExecAuto({|a,b,c| CRMA980(a,b,c)}, aSA1Auto, nOpcAuto, aAI0Auto)

          If lMsErroAuto
               lRet := lMsErroAuto
               nNok++
               MostraErro()// não usar via JOB
          Else
               nOk++
               Conout("Cliente Exportado com sucesso!") //opção 3
          
          EndIf

     EndIf


Return

Foto
Mensagem do Enviar e-mail Abrir o Perfil do usuário EMERSON.EN EMERSON.EN em 06/02/2024, 19:09 h
Local: SP  Registro: 20/08/2010  Postagens: 675
uma user function deve ser chamada com U_ como prefixo

U_xMata(cCod, cLoja, cNome, cNReduz, cTipo, cEnd, cBairro, cEst, cMun)

Para postar no Fórum você precisa efetuar o seu login ou se registrar

 Mudar para Fórum

 

 

 
 
   
Pagina Principal Shopping PROTHEUS Tire suas duvidas Vagas Microsiga em todo Brasil Aprofunde seus conhecimentos Noticias Online Fale Conosco Pagina Principal