Á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

Solucoes_totvs_cross
SolucaoCross

Solucoes_totvs_parceiros
SolucaoParceiros

Solucoes_totvs_parceirosexptotvs
SolucaoParcsExpsTOTVSTOTVS DMS

Linha de Produto:

Linhas_totvs
LinhaLinha Protheus

Segmento:

Segmentos_totvs
Segmento Varejo

Módulo:

Modulos_cross_segmentos

Modulos_framework

Modulos_totvs_construcao

Modulos_totvs_juridico

Modulos_totvs_logistica

Modulos_totvs_manufatura

Modulos_totvs_rh

Modulos_totvs_saude

Modulos_totvs_prestadores_de_servicos

TOTVS DMS (Linha Protheus) - Veículos (SIGAVEI)

Função:
País:Brasil
Ticket:Não se aplica.
Requisito/Story/Issue (informe o requisito relacionado) :Não se aplica.


02. DESCRIÇÃO

Abaixo, seguem as instruções para executar os processos de saída de veículos via MSExecAuto. Os dados apresentados nos exemplos são meramente ilustrativos.


03. DEMAIS INFORMAÇÕES


Totvs custom tabs box
tabsSaída por Venda (VEIXA011), Devolução de compra (VEIXA012), Transferência (VEIXA014), Remessa (VEIXA013), Saída Retorno Remessa (VEIXA016), Consignado (VEIXA015), Saída Retorno Consignado (VEIXA017), Cancelamento de saída
idsid1,id2,id3,id4,id5,id6,id7,id8
Totvs custom tabs box items
defaultyes
referenciaid1
Bloco de código
languagec#
themeRDark
titleExemplo
#include "PROTHEUS.CH"
 
User Function Venda_ExecAuto_VEIXA011()
  
    Local xAutoCab      := {}
    Local xAutoItens    := {}
    Local nOperacInc    := 3    // Operação de inclusão
    Local cTipoOperacao := "0"  // 0=Venda; 2=Transferencia; 3=Remessa; 4=Devolucao; 5=Consignado; 6=Ret Remessa; 7=Ret Consignado
    Local cSerieNFAutom := "1"  // Opcional - Serie da NF de Remessa. Quando este parametro for informado, a NF será gerada automaticamente e não será aberta. Caso vazio, será aberta a tela para escolha da NF
    Local cRotOrigem    := "VEIXA011"
 
    Private lMsErroAuto := .F.
 
    //Cabeçalho
    aAdd(xAutoCab,{"VV0_FILIAL"  ,xFilial("VV0")        ,Nil}) // Filial
    aAdd(xAutoCab,{"VV0_CLIFOR"  ,"C"                   ,Nil}) // Cliente ou fornecedor  C - Cliente / F- Fornecedor
    aAdd(xAutoCab,{"VV0_CODCLI"  ,"000007"              ,Nil}) // Código do Cliente deve existir na base
    aAdd(xAutoCab,{"VV0_LOJA"    ,"01"                  ,Nil}) // Loja
    aAdd(xAutoCab,{"VV0_FORPAG"  ,"003"                 ,Nil}) // Forma de pagamento
    aAdd(xAutoCab,{"VV0_NATFIN"  ,"VENDA"               ,Nil}) // Natureza de venda
    aAdd(xAutoCab,{"VV0_CODVEN"  ,"000001"              ,Nil}) // Código de vendedor
    aAdd(xAutoCab,{"VV0_VALFRE"  ,250                   ,Nil}) // Valor do Frete
  
    //Itens da Saída por Venda
    xAutoIt001 := {}
    aAdd(xAutoIt001,{"VVA_FILIAL"  ,xFilial("VVA")      ,Nil}) // Filial
    aAdd(xAutoIt001,{"VVA_CHASSI"  ,"CHASSI_TESTE" 		,Nil}) // Chassi
    aAdd(xAutoIt001,{"VVA_CODTES"  ,"501"               ,Nil}) // Código de TES (Tipo de entrada e saída)
    aAdd(xAutoIt001,{"VVA_VALDES"  ,0                   ,Nil}) // Valor de desconto
    aAdd(xAutoIt001,{"VVA_VALMOV"  ,200000              ,Nil}) // Valor do movimento
    aAdd(xAutoIt001,{"VVA_CENCUS"  ,"1"                 ,Nil}) // Centro de Custo
    aAdd(xAutoItens,xAutoIt001)

    MSExecAuto({|a,b,c,d,e,f,g,h,i,j,k,l,m,n| VEIXX001(a,b,c,d,e,f,g,h,i,j,k,l,m,n)}, xAutoCab, xAutoItens,{} , nOperacInc, cTipoOperacao, NIL, .F., , , ,cRotOrigem, , , cSerieNFAutom)
  
    If lMsErroAuto
        DisarmTransaction()
        MostraErro()
    Else
        FWAlertSuccess("Saída por VENDA concluída com sucesso","Atenção")
    EndIf
  
Return()
Totvs custom tabs box items
defaultno
referenciaid2
Bloco de código
languagec#
themeRDark
titleExemplo
#include "PROTHEUS.CH"
 
User Function Devolucao_ExecAuto_VEIXA012()
  
    Local xAutoCab      := {}
    Local xAutoItens    := {}
    Local xAutoAux      := {}
    Local nOperacInc    := 3    // Operação de inclusão
    Local cTipoOperacao := "4"  // 0=Venda; 2=Transferencia; 3=Remessa; 4=Devolucao; 5=Consignado; 6=Ret Remessa; 7=Ret Consignado
    Local cSerieNFAutom := "1"  // Opcional - Serie da NF de Remessa. Quando este parametro for informado, a NF será gerada automaticamente e não será aberta. Caso vazio, será aberta a tela para escolha da NF
    Local cRotOrigem    := "VEIXA012"
    Local cNumTransacao := Space(TamSX3("VVF_TRACPA")[01])
    Local aPergs        := {}
 
    Private lMsErroAuto := .F.

    aAdd(aPergs, {1, "Numero transacao de compra a ser devolvida", cNumTransacao,  "", ".T.", "", ".T.", 80,  .T.})
 
    If ParamBox(aPergs, "Informe a compra a ser cancelada")

        VVF->(DBSetOrder(1))
        If VVF->(DBSeek(xFilial("VVF") + MV_PAR01))
 
            //Cabeçalho
            aAdd(xAutoCab,{"VV0_FILIAL"  ,xFilial("VV0")		,Nil})
            aAdd(xAutoCab,{"VV0_CLIFOR"  ,VVF->VVF_CLIFOR		,Nil})
            aAdd(xAutoCab,{"VV0_CODCLI"  ,VVF->VVF_CODFOR		,Nil})
            aAdd(xAutoCab,{"VV0_LOJA"    ,VVF->VVF_LOJA			,Nil})
            aAdd(xAutoCab,{"VV0_FORPAG"  ,VVF->VVF_FORPAG		,Nil})
            aAdd(xAutoCab,{"VV0_CODVEN"  ,"000001"				,Nil})
            aAdd(xAutoCab,{"VV0_NATFIN"  ,VVF->VVF_NATURE		,Nil})

            VVG->(DBSetOrder(1))
            If VVG->(DBSeek(xFilial("VVG") + MV_PAR01))
        
                //Itens da Devolução
                xAutoIt001 := {}
                aAdd(xAutoIt001,{"VVA_FILIAL"  ,xFilial("VVA")      ,Nil}) // Filial
                aAdd(xAutoIt001,{"VVA_CHASSI"  ,"8ADZZZ12XLY304762" ,Nil}) // Chassi
                aAdd(xAutoIt001,{"VVA_CODTES"  ,"501"               ,Nil}) // Código de tes (Tipo de entrada e saída)
                aAdd(xAutoIt001,{"VVA_VALDES"  ,0                   ,Nil}) // Valor de desconto
                aAdd(xAutoIt001,{"VVA_VALMOV"  ,30000               ,Nil}) // Valor do movimento
                aAdd(xAutoIt001,{"VVA_CENCUS"  ,"1"                 ,Nil}) // Centro de Custo
                aAdd(xAutoItens,xAutoIt001)

                SD1->(DBSetOrder(1))
                SD1->(DBSeek(xFilial("SD1")+VVF->VVF_NUMNFI + VVF->VVF_SERNFI + VVF->VVF_CODFOR + VVF->VVF_LOJA /*+ SB1->B1_COD*/))

                xAutoAuxIt001 := {}
                aAdd(xAutoAuxIt001,{"C6_NFORI"   ,SD1->D1_DOC       ,Nil})
                aAdd(xAutoAuxIt001,{"C6_SERIORI" ,SD1->D1_SERIE     ,Nil})
                aAdd(xAutoAuxIt001,{"C6_IDENTB6" ,SD1->D1_IDENTB6   ,Nil})
                aAdd(xAutoAuxIt001,{"C6_ITEMORI" ,SD1->D1_ITEM      ,Nil})
                //
                aAdd(xAutoAux,xAutoAuxIt001)

                MSExecAuto({|a,b,c,d,e,f,g,h,i,j,k,l,m,n| VEIXX001(a,b,c,d,e,f,g,h,i,j,k,l,m,n)}, xAutoCab, xAutoItens,{} , nOperacInc, cTipoOperacao, xAutoAux, .F., , , ,cRotOrigem, , , cSerieNFAutom)
            
                If lMsErroAuto
                    DisarmTransaction()
                    MostraErro()
                Else
                    FWAlertSuccess("Saída por DEVOLUÇÃO DE COMPRA concluída com sucesso","Atenção")
                EndIf
            Endif
        Endif
    Endif
  
Return()
Totvs custom tabs box items
defaultno
referenciaid3
Bloco de código
languagec#
themeRDark
titleExemplo
#include "PROTHEUS.CH"
 
User Function Transferencia_ExecAuto_VEIXA014()
  
    Local xAutoCab      := {}
    Local xAutoItens    := {}
    Local nOperacInc    := 3    // Operação de inclusão
    Local cTipoOperacao := "2"  // 0=Venda; 2=Transferencia; 3=Remessa; 4=Devolucao; 5=Consignado; 6=Ret Remessa; 7=Ret Consignado
    Local cSerieNFAutom := "1"  // Opcional - Serie da NF de Remessa. Quando este parametro for informado, a NF será gerada automaticamente e não será aberta. Caso vazio, será aberta a tela para escolha da NF
    Local cRotOrigem    := "VEIXA014"
 
    Private lMsErroAuto := .F.
 
    //Cabeçalho
    aAdd(xAutoCab,{"VV0_FILIAL"  ,xFilial("VV0")        ,Nil}) // Filial
    aAdd(xAutoCab,{"VV0_CLIFOR"  ,"C"                   ,Nil}) // Cliente ou fornecedor  C - Cliente / F- Fornecedor
    aAdd(xAutoCab,{"VV0_CODCLI"  ,"000004"              ,Nil}) // Código do Cliente deve existir na base
    aAdd(xAutoCab,{"VV0_LOJA"    ,"01"                  ,Nil}) // Loja
    aAdd(xAutoCab,{"VV0_FORPAG"  ,"003"                 ,Nil}) // Forma de pagamento
    aAdd(xAutoCab,{"VV0_NATFIN"  ,"VENDA"               ,Nil}) // Natureza de venda
    aAdd(xAutoCab,{"VV0_CODVEN"  ,"000001"              ,Nil}) // Código de vendedor
    aAdd(xAutoCab,{"VV0_VALFRE"  ,250                   ,Nil}) // Valor do Frete
  
    //Itens da Saída por Transf.
    xAutoIt001 := {}
    aAdd(xAutoIt001,{"VVA_FILIAL"  ,xFilial("VVA")      ,Nil}) // Filial
    aAdd(xAutoIt001,{"VVA_CHASSI"  ,"CHASSI_TESTE" 		,Nil}) // Chassi
    aAdd(xAutoIt001,{"VVA_CODTES"  ,"501"               ,Nil}) // Código de tes (Tipo de entrada e saída)
    aAdd(xAutoIt001,{"VVA_VALDES"  ,0                   ,Nil}) // Valor de desconto
    aAdd(xAutoIt001,{"VVA_VALMOV"  ,20000               ,Nil}) // Valor do movimento
    aAdd(xAutoIt001,{"VVA_CENCUS"  ,"1"                 ,Nil}) // Centro de Custo
    aAdd(xAutoItens,xAutoIt001)
 
    MSExecAuto({|a,b,c,d,e,f,g,h,i,j,k,l,m,n| VEIXX001(a,b,c,d,e,f,g,h,i,j,k,l,m,n)}, xAutoCab, xAutoItens,{} , nOperacInc, cTipoOperacao, NIL, .F., , , ,cRotOrigem, , , cSerieNFAutom)
  
    If lMsErroAuto
        DisarmTransaction()
        MostraErro()
    Else
        FWAlertSuccess("Saída por TRANSFERENCIA concluída com sucesso","Atenção")
    EndIf
  
Return()
Totvs custom tabs box items
defaultno
referenciaid4
Bloco de código
languagec#
themeRDark
titleExemplo
#include "PROTHEUS.CH"
 
User Function Remessa_ExecAuto_VEIXA013()
  
    Local xAutoCab      := {}
    Local xAutoItens    := {}
    Local nOperacInc    := 3    // Operação de inclusão
    Local cTipoOperacao := "3"  // 0=Venda; 2=Transferencia; 3=Remessa; 4=Devolucao; 5=Consignado; 6=Ret Remessa; 7=Ret Consignado
    Local cSerieNFAutom := "1"  // Opcional - Serie da NF de Remessa. Quando este parametro for informado, a NF será gerada automaticamente e não será aberta. Caso vazio, será aberta a tela para escolha da NF
    Local cRotOrigem    := "VEIXA013"
 
    Private lMsErroAuto := .F.
 
    //Cabeçalho
    aAdd(xAutoCab,{"VV0_FILIAL"  ,xFilial("VV0")        ,Nil}) // Filial
    aAdd(xAutoCab,{"VV0_CLIFOR"  ,"C"                   ,Nil}) // Cliente ou fornecedor  C - Cliente / F- Fornecedor
    aAdd(xAutoCab,{"VV0_CODCLI"  ,"000001"              ,Nil}) // Código do Cliente deve existir na base
    aAdd(xAutoCab,{"VV0_LOJA"    ,"01"                  ,Nil}) // Loja
    aAdd(xAutoCab,{"VV0_FORPAG"  ,"003"                 ,Nil}) // Forma de pagamento
    aAdd(xAutoCab,{"VV0_NATFIN"  ,"VENDA"               ,Nil}) // Natureza de venda
    aAdd(xAutoCab,{"VV0_CODVEN"  ,"000001"              ,Nil}) // Código de vendedor
    aAdd(xAutoCab,{"VV0_VALFRE"  ,250                   ,Nil}) // Valor do Frete
  
    //Itens da Remessa
    xAutoIt001 := {}
    aAdd(xAutoIt001,{"VVA_FILIAL"  ,xFilial("VVA")      ,Nil}) // Filial
    aAdd(xAutoIt001,{"VVA_CHASSI"  ,"CHASSI_TESTE_001"  ,Nil}) // Chassi
    aAdd(xAutoIt001,{"VVA_CODTES"  ,"501"               ,Nil}) // Código de tes (Tipo de entrada e saída)
    aAdd(xAutoIt001,{"VVA_VALDES"  ,0                   ,Nil}) // Valor de desconto
    aAdd(xAutoIt001,{"VVA_VALMOV"  ,20000               ,Nil}) // Valor do movimento
    aAdd(xAutoIt001,{"VVA_CENCUS"  ,"1"                 ,Nil}) // Centro de Custo
    aAdd(xAutoItens,xAutoIt001)
 
    xAutoIt002 := {}
    aAdd(xAutoIt002,{"VVA_FILIAL"  ,xFilial("VVA")     ,Nil}) // Filial
    aAdd(xAutoIt002,{"VVA_CHASSI"  ,"CHASSI_TESTE_002" ,Nil}) // Chassi
    aAdd(xAutoIt002,{"VVA_CODTES"  ,"501"              ,Nil}) // Código de tes (Tipo de entrada e saída)
    aAdd(xAutoIt002,{"VVA_VALDES"  ,5000               ,Nil}) // Valor de desconto
    aAdd(xAutoIt002,{"VVA_VALMOV"  ,50000              ,Nil}) // Valor do movimento
    aAdd(xAutoItens,xAutoIt002)
 
    xAutoIt003 := {}
    aAdd(xAutoIt003,{"VVA_FILIAL"  ,xFilial("VVA")     ,Nil}) // Filial
    aAdd(xAutoIt003,{"VVA_CHASSI"  ,"CHASSI_TESTE_003" ,Nil}) // Chassi
    aAdd(xAutoIt003,{"VVA_CODTES"  ,"501"              ,Nil}) // Código de tes (Tipo de entrada e saída)
    aAdd(xAutoIt003,{"VVA_VALDES"  ,0                  ,Nil}) // Valor de desconto
    aAdd(xAutoIt003,{"VVA_VALMOV"  ,15000              ,Nil}) // Valor do movimento
    aAdd(xAutoItens,xAutoIt003)
 
    MSExecAuto({|a,b,c,d,e,f,g,h,i,j,k,l,m,n| VEIXX001(a,b,c,d,e,f,g,h,i,j,k,l,m,n)}, xAutoCab, xAutoItens,{} , nOperacInc, cTipoOperacao, NIL, .F., , , ,cRotOrigem, , , cSerieNFAutom)
  
    If lMsErroAuto
        DisarmTransaction()
        MostraErro()
    Else
        FWAlertSuccess("Saída por REMESSA concluída com sucesso","Atenção")
    EndIf
  
Return()
Totvs custom tabs box items
defaultno
referenciaid5
Bloco de código
languagec#
themeRDark
titleExemplo
#include "PROTHEUS.CH"
 
User Function RetRemessa_ExecAuto_VEIXA016()
  
    Local xAutoCab      := {}
    Local xAutoItens    := {}
    Local xAutoAux      := {}
    Local nOperacInc    := 3    // Operação de inclusão
    Local cTipoOperacao := "6"  // 0=Venda; 2=Transferencia; 3=Remessa; 4=Devolucao; 5=Consignado; 6=Ret Remessa; 7=Ret Consignado
    Local cSerieNFAutom := "1"  // Opcional - Serie da NF de Remessa. Quando este parametro for informado, a NF será gerada automaticamente e não será aberta. Caso vazio, será aberta a tela para escolha da NF
    Local cRotOrigem    := "VEIXA016"
    Local cNumTransacao := Space(TamSX3("VVF_TRACPA")[01])
    Local aPergs        := {}
 
    Private lMsErroAuto := .F.

    aAdd(aPergs, {1, "Numero da remessa a ser retornada", cNumTransacao,  "", ".T.", "", ".T.", 80,  .T.})
 
    If ParamBox(aPergs, "Informe a remessa a ser retornada")

        VVF->(DBSetOrder(1))
        If VVF->(DBSeek(xFilial("VVF") + MV_PAR01))
 
            //Cabeçalho
            aAdd(xAutoCab,{"VV0_FILIAL"  ,xFilial("VV0")		,Nil})
            aAdd(xAutoCab,{"VV0_CLIFOR"  ,VVF->VVF_CLIFOR		,Nil})
            aAdd(xAutoCab,{"VV0_CODCLI"  ,VVF->VVF_CODFOR		,Nil})
            aAdd(xAutoCab,{"VV0_LOJA"    ,VVF->VVF_LOJA			,Nil})
            aAdd(xAutoCab,{"VV0_FORPAG"  ,VVF->VVF_FORPAG		,Nil})
            aAdd(xAutoCab,{"VV0_CODVEN"  ,"000001"				,Nil})
            aAdd(xAutoCab,{"VV0_NATFIN"  ,VVF->VVF_NATURE		,Nil})

            VVG->(DBSetOrder(1))
            If VVG->(DBSeek(xFilial("VVG") + MV_PAR01))
        
                //Itens da Saída por Retorno de Remessa
                xAutoIt001 := {}
                aAdd(xAutoIt001,{"VVA_FILIAL"  ,xFilial("VVA")      ,Nil}) // Filial
                aAdd(xAutoIt001,{"VVA_CHASSI"  ,VVG->VVG_CHASSI     ,Nil}) // Chassi
                aAdd(xAutoIt001,{"VVA_CODTES"  ,"501"               ,Nil}) // Código de tes (Tipo de entrada e saída)
                aAdd(xAutoIt001,{"VVA_VALDES"  ,VVG->VVG_VALDES     ,Nil}) // Valor de desconto
                aAdd(xAutoIt001,{"VVA_VALMOV"  ,VVG->VVG_VALUNI     ,Nil}) // Valor do movimento
                aAdd(xAutoIt001,{"VVA_CENCUS"  ,"1"                 ,Nil}) // Centro de Custo
                aAdd(xAutoItens,xAutoIt001)

                SD1->(DBSetOrder(1))
                SD1->(DBSeek(xFilial("SD1")+VVF->VVF_NUMNFI + VVF->VVF_SERNFI + VVF->VVF_CODFOR + VVF->VVF_LOJA + SB1->B1_COD))

                xAutoAuxIt001 := {}
                aAdd(xAutoAuxIt001,{"C6_NFORI"   ,SD1->D1_DOC       ,Nil})
                aAdd(xAutoAuxIt001,{"C6_SERIORI" ,SD1->D1_SERIE     ,Nil})
                aAdd(xAutoAuxIt001,{"C6_IDENTB6" ,SD1->D1_IDENTB6   ,Nil})
                aAdd(xAutoAuxIt001,{"C6_ITEMORI" ,SD1->D1_ITEM      ,Nil})
                //
                aAdd(xAutoAux,xAutoAuxIt001)

                MSExecAuto({|a,b,c,d,e,f,g,h,i,j,k,l,m,n| VEIXX001(a,b,c,d,e,f,g,h,i,j,k,l,m,n)}, xAutoCab, xAutoItens,{} , nOperacInc, cTipoOperacao, xAutoAux, .F., , , ,cRotOrigem, , , cSerieNFAutom)
            
                If lMsErroAuto
                    DisarmTransaction()
                    MostraErro()
                Else
                    FWAlertSuccess("Saída por RETORNO REMESSA concluída com sucesso","Atenção")
                EndIf

            Endif

        Endif
        
    Endif
  
Return()
Totvs custom tabs box items
defaultno
referenciaid6
Bloco de código
languagec#
themeRDark
titleExemplo
#include "PROTHEUS.CH"
 
User Function Consignado_ExecAuto_VEIXA015()
  
    Local xAutoCab      := {}
    Local xAutoItens    := {}
    Local nOperacInc    := 3    // Operação de inclusão
    Local cTipoOperacao := "5"  // 0=Venda; 2=Transferencia; 3=Remessa; 4=Devolucao; 5=Consignado; 6=Ret Remessa; 7=Ret Consignado
    Local cSerieNFAutom := "1"  // Opcional - Serie da NF de Remessa. Quando este parametro for informado, a NF será gerada automaticamente e não será aberta. Caso vazio, será aberta a tela para escolha da NF
    Local cRotOrigem    := "VEIXA015"
 
    Private lMsErroAuto := .F.
 
    //Cabeçalho
    aAdd(xAutoCab,{"VV0_FILIAL"  ,xFilial("VV0")        ,Nil}) // Filial
    aAdd(xAutoCab,{"VV0_CLIFOR"  ,"C"                   ,Nil}) // Cliente ou fornecedor  C - Cliente / F- Fornecedor
    aAdd(xAutoCab,{"VV0_CODCLI"  ,"000001"              ,Nil}) // Código do Cliente deve existir na base
    aAdd(xAutoCab,{"VV0_LOJA"    ,"01"                  ,Nil}) // Loja
    aAdd(xAutoCab,{"VV0_FORPAG"  ,"003"                 ,Nil}) // Forma de pagamento
    aAdd(xAutoCab,{"VV0_NATFIN"  ,"VENDA"               ,Nil}) // Natureza de venda
    aAdd(xAutoCab,{"VV0_CODVEN"  ,"000001"              ,Nil}) // Código de vendedor
    aAdd(xAutoCab,{"VV0_VALFRE"  ,250                   ,Nil}) // Valor do Frete
  
    //Itens da Saída por Consignação
    xAutoIt001 := {}
    aAdd(xAutoIt001,{"VVA_FILIAL"  ,xFilial("VVA")      ,Nil}) // Filial
    aAdd(xAutoIt001,{"VVA_CHASSI"  ,"CHASSI_TESTE_001"  ,Nil}) // Chassi
    aAdd(xAutoIt001,{"VVA_CODTES"  ,"501"               ,Nil}) // Código de tes (Tipo de entrada e saída)
    aAdd(xAutoIt001,{"VVA_VALDES"  ,0                   ,Nil}) // Valor de desconto
    aAdd(xAutoIt001,{"VVA_VALMOV"  ,20000               ,Nil}) // Valor do movimento
    aAdd(xAutoIt001,{"VVA_CENCUS"  ,"1"                 ,Nil}) // Centro de Custo
    aAdd(xAutoItens,xAutoIt001)
 
    xAutoIt002 := {}
    aAdd(xAutoIt002,{"VVA_FILIAL"  ,xFilial("VVA")     ,Nil}) // Filial
    aAdd(xAutoIt002,{"VVA_CHASSI"  ,"CHASSI_TESTE_002" ,Nil}) // Chassi
    aAdd(xAutoIt002,{"VVA_CODTES"  ,"501"              ,Nil}) // Código de tes (Tipo de entrada e saída)
    aAdd(xAutoIt002,{"VVA_VALDES"  ,5000               ,Nil}) // Valor de desconto
    aAdd(xAutoIt002,{"VVA_VALMOV"  ,50000              ,Nil}) // Valor do movimento
    aAdd(xAutoItens,xAutoIt002)
 
    xAutoIt003 := {}
    aAdd(xAutoIt003,{"VVA_FILIAL"  ,xFilial("VVA")     ,Nil}) // Filial
    aAdd(xAutoIt003,{"VVA_CHASSI"  ,"CHASSI_TESTE_003" ,Nil}) // Chassi
    aAdd(xAutoIt003,{"VVA_CODTES"  ,"501"              ,Nil}) // Código de tes (Tipo de entrada e saída)
    aAdd(xAutoIt003,{"VVA_VALDES"  ,0                  ,Nil}) // Valor de desconto
    aAdd(xAutoIt003,{"VVA_VALMOV"  ,15000              ,Nil}) // Valor do movimento
    aAdd(xAutoItens,xAutoIt003)
 
    MSExecAuto({|a,b,c,d,e,f,g,h,i,j,k,l,m,n| VEIXX001(a,b,c,d,e,f,g,h,i,j,k,l,m,n)}, xAutoCab, xAutoItens,{} , nOperacInc, cTipoOperacao, NIL, .F., , , ,cRotOrigem, , , cSerieNFAutom)
  
    If lMsErroAuto
        DisarmTransaction()
        MostraErro()
    Else
        FWAlertSuccess("Saída por CONSIGNAÇÃO concluída com sucesso","Atenção")
    EndIf
  
Return()
Totvs custom tabs box items
defaultno
referenciaid7
Bloco de código
languagec#
themeRDark
titleExemplo
#include "PROTHEUS.CH"
 
User Function RetConsignado_ExecAuto_VEIXA017()
  
    Local xAutoCab      := {}
    Local xAutoItens    := {}
    Local xAutoAux      := {}
    Local nOperacInc    := 3    // Operação de inclusão
    Local cTipoOperacao := "7"  // 0=Venda; 2=Transferencia; 3=Remessa; 4=Devolucao; 5=Consignado; 6=Ret Remessa; 7=Ret Consignado
    Local cSerieNFAutom := "1"  // Opcional - Serie da NF de Remessa. Quando este parametro for informado, a NF será gerada automaticamente e não será aberta. Caso vazio, será aberta a tela para escolha da NF
    Local cRotOrigem    := "VEIXA017"
    Local cNumTransacao := Space(TamSX3("VVF_TRACPA")[01])
    Local aPergs        := {}
 
    Private lMsErroAuto := .F.

    aAdd(aPergs, {1, "Numero da consignação a ser retornada", cNumTransacao,  "", ".T.", "", ".T.", 80,  .T.})
 
    If ParamBox(aPergs, "Informe a consignação a ser retornada")

        VVF->(DBSetOrder(1))
        If VVF->(DBSeek(xFilial("VVF") + MV_PAR01))
 
            //Cabeçalho
            aAdd(xAutoCab,{"VV0_FILIAL"  ,xFilial("VV0")		,Nil})
            aAdd(xAutoCab,{"VV0_CLIFOR"  ,VVF->VVF_CLIFOR		,Nil})
            aAdd(xAutoCab,{"VV0_CODCLI"  ,VVF->VVF_CODFOR		,Nil})
            aAdd(xAutoCab,{"VV0_LOJA"    ,VVF->VVF_LOJA			,Nil})
            aAdd(xAutoCab,{"VV0_FORPAG"  ,VVF->VVF_FORPAG		,Nil})
            aAdd(xAutoCab,{"VV0_CODVEN"  ,"000001"				,Nil})
            aAdd(xAutoCab,{"VV0_NATFIN"  ,VVF->VVF_NATURE		,Nil})

            VVG->(DBSetOrder(1))
            If VVG->(DBSeek(xFilial("VVG") + MV_PAR01))
        
                //Itens do Retorno Consignação
                xAutoIt001 := {}
                aAdd(xAutoIt001,{"VVA_FILIAL"  ,xFilial("VVA")      ,Nil}) // Filial
                aAdd(xAutoIt001,{"VVA_CHASSI"  ,VVG->VVG_CHASSI     ,Nil}) // Chassi
                aAdd(xAutoIt001,{"VVA_CODTES"  ,"501"               ,Nil}) // Código de tes (Tipo de entrada e saída)
                aAdd(xAutoIt001,{"VVA_VALDES"  ,VVG->VVG_VALDES     ,Nil}) // Valor de desconto
                aAdd(xAutoIt001,{"VVA_VALMOV"  ,VVG->VVG_VALUNI     ,Nil}) // Valor do movimento
                aAdd(xAutoIt001,{"VVA_CENCUS"  ,"1"                 ,Nil}) // Centro de Custo
                aAdd(xAutoItens,xAutoIt001)

                SD1->(DBSetOrder(1))
                SD1->(DBSeek(xFilial("SD1")+VVF->VVF_NUMNFI + VVF->VVF_SERNFI + VVF->VVF_CODFOR + VVF->VVF_LOJA /*+ SB1->B1_COD*/))

                xAutoAuxIt001 := {}
                aAdd(xAutoAuxIt001,{"C6_NFORI"   ,SD1->D1_DOC       ,Nil})
                aAdd(xAutoAuxIt001,{"C6_SERIORI" ,SD1->D1_SERIE     ,Nil})
                aAdd(xAutoAuxIt001,{"C6_IDENTB6" ,SD1->D1_IDENTB6   ,Nil})
                aAdd(xAutoAuxIt001,{"C6_ITEMORI" ,SD1->D1_ITEM      ,Nil})
                //
                aAdd(xAutoAux,xAutoAuxIt001)

                MSExecAuto({|a,b,c,d,e,f,g,h,i,j,k,l,m,n| VEIXX001(a,b,c,d,e,f,g,h,i,j,k,l,m,n)}, xAutoCab, xAutoItens,{} , nOperacInc, cTipoOperacao, xAutoAux, .F., , , ,cRotOrigem, , , cSerieNFAutom)
            
                If lMsErroAuto
                    DisarmTransaction()
                    MostraErro()
                Else
                    FWAlertSuccess("Saída por RETORNO CONSIGNAÇÃO concluída com sucesso","Atenção")
                EndIf
            Endif

        Endif

    Endif
  
Return()
Totvs custom tabs box items
defaultno
referenciaid8
Aviso
titleAtenção!

O Tipo de Operação e a Rotina de Origem devem ser informados corretamente, conforme a operação de cancelamento que está sendo realizada. Isso porque o cancelamento de saídas como Devolução, Retorno de Consignação e Retorno de Remessa altera o status da nota de entrada originalmente recebida. Para que o status da nota retorne para 'Válida', é essencial informar a operação correta.

Bloco de código
languagec#
themeRDark
titleExemplo
#include "PROTHEUS.CH"
 
User Function Canc_Transacao_ExecAuto()
  
    Local xAutoCab      := {}
    Local aPergs        := {}
    Local nCancOperac   := 5    // Operação de cancelamento
    Local cTipoOperacao := "3"  // 0=Venda; 2=Transferencia; 3=Remessa; 4=Devolucao; 5=Consignado; 6=Ret Remessa; 7=Ret Consignado
    Local cNumTransacao := Space(TamSX3("VV0_NUMTRA")[01])
    Local cRotOrigem    := "VEIXA013"
 
    Private lMsErroAuto := .F.
 
    aAdd(aPergs, {1, "Numero da transação", cNumTransacao,  "", ".T.", "VV0ATE", ".T.", 80,  .T.})
 
    If ParamBox(aPergs, "Informe a transação a ser cancelada")

        xAutoCab := {}
        aAdd(xAutoCab, { 'VV0_NUMTRA' , MV_PAR01 , NIL } ) //Numero da transação

        MSExecAuto({ |a,b,c,d,e,f,g,h,i,j,k| VEIXX001(a,b,c,d,e,f,g,h,i,j,k) }, xAutoCab, {} ,{} ,nCancOperac, cTipoOperacao , NIL, .F., {} , , ,cRotOrigem)

        If lMsErroAuto
            DisarmTransaction()
            MostraErro()
        Else
            FWAlertSuccess("Cancelamento da transação concluída com sucesso","Atenção")
        EndIf
    Endif
  
Return()


04. ASSUNTOS RELACIONADOS



Templatedocumentos