Histórico da Página
01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus® |
---|---|
Segmento: | Serviços |
Módulo: | Financeiro |
02. SITUAÇÃO/REQUISITO
Implementada a utilização automática da rotina de Compensação entre carteiras.
Informações | ||
---|---|---|
| ||
FINA450(nPosArotina,aAutoCab,nOpcAuto)
Observação:
|
03. EXEMPLO DE UTILIZAÇÃO
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#include "rwmake.ch" #include 'tbiconn.ch' User Function AUTO450() Local aAutoCab := {} Local aArea := GetArea() Local cTabSe1 := "TMPSE1A" Local cTabSe2 := "TMPSE2A" Local aSE1450 := {} Local aSE2450 := {} Local cFilSe2 := xFilial("SE2") Local cFilSe1 := xFilial("SE1") Private lMsHelpAuto := .T. Private lMsErroAuto := .F. BeginSql Alias cTabSe1 SELECT R_E_C_N_O_ as RECNO FROM %Table:SE1% SE1 WHERE SE1.E1_FILIAL = %Exp:cFilSe1% AND SE1.E1_PREFIXO = 'CPT' AND SE1.E1_NUM = 'VT001' AND SE1.E1_TIPO = 'NF' AND SE1.E1_CLIENTE = 'FIN001' AND SE1.E1_LOJA = '01' AND SE1.%NotDel% EndSql While (cTabSe1)->(!EOF()) SE1->(DbGoto((cTabSe1)->RECNO)) AAdd(aSE1450, {SE1->E1_FILIAL+SE1->E1_PREFIXO+SE1->E1_NUM+SE1->E1_PARCELA+SE1->E1_TIPO}) (cTabSe1)->(DbSkip()) Enddo (cTabSe1)->(DbCloseArea()) BeginSql Alias cTabSe2 SELECT R_E_C_N_O_ as RECNO FROM %Table:SE2% SE2 WHERE SE2.E2_FILIAL = %Exp:cFilSe2% AND SE2.E2_PREFIXO = 'CPT' AND SE2.E2_NUM = 'VT001' AND SE2.E2_TIPO = 'NF' AND SE2.E2_FORNECE = 'FIN001' AND SE2.E2_LOJA = '01' AND SE2.%NotDel% EndSql While (cTabSe2)->(!EOF()) SE2->(DbGoto((cTabSe2)->RECNO)) AAdd(aSE2450, {SE2->E2_FILIAL+SE2->E2_PREFIXO+SE2->E2_NUM+SE2->E2_PARCELA+SE2->E2_TIPO+SE2->E2_FORNECE+SE2->E2_LOJA}) (cTabSe2)->(DbSkip()) Enddo (cTabSe2)->(DbCloseArea()) aAutoCab := { {"AUTDVENINI450", cTod('27/08/19') , nil},; {"AUTDVENFIM450", cTod('27/08/19') , nil},; {"AUTNLIM450" , 10000 , nil},; {"AUTCCLI450" , "FIN001" , nil},; {"AUTCLJCLI" , "01" , nil},; {"AUTCFOR450" , "FIN001" , nil},; {"AUTCLJFOR" , "01" , nil},; {"AUTCMOEDA450" , "01" , nil},; {"AUTNDEBCRED" , 1 , nil},; {"AUTLTITFUTURO", .F. , nil},; {"AUTARECCHAVE" , aSE1450 , nil},; {"AUTAPAGCHAVE" , aSE2450 , nil}} MSExecAuto({|x,y,z| Fina450(x,y,z)}, nil , aAutoCab , 3 ) If !lMsErroAuto alert("Incluido com sucesso! ") confirmsx8() Else alert("Erro na inclusao!") rollbacksx8() MostraErro() EndIf RestArea(aArea) Return |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#include "rwmake.ch" #include 'tbiconn.ch' User Function Auto450() Local aAutoCab := {} Local aArea := GetArea() Local cTabSe1 := "TMPSE1A" Local cTabSe2 := "TMPSE2A" Local aSE1450 := {} Local aSE2450 := {} Local aFilCmp := {} Private lMsHelpAuto := .F. Private lMsErroAuto := .F. BeginSql Alias cTabSe1 SELECT R_E_C_N_O_ as RECNO FROM %Table:SE1% SE1 WHERE SE1.E1_FILIAL = 'D MG 01 ' AND SE1.E1_PREFIXO = 'CPT' AND SE1.E1_NUM = 'VT001' AND SE1.E1_TIPO = 'NF' AND SE1.E1_CLIENTE = 'FIN001' AND SE1.E1_LOJA = '01' AND SE1.%NotDel% EndSql While (cTabSe1)->(!EOF()) SE1->(DbGoto((cTabSe1)->RECNO)) AAdd(aSE1450, {SE1->E1_FILIAL+SE1->E1_PREFIXO+SE1->E1_NUM+SE1->E1_PARCELA+SE1->E1_TIPO}) If ascan(aFilCmp,SE1->E1_FILIAL) == 0 Aadd(aFilCmp, SE1->E1_FILIAL) EndIf (cTabSe1)->(DbSkip()) Enddo (cTabSe1)->(DbCloseArea()) BeginSql Alias cTabSe2 SELECT R_E_C_N_O_ as RECNO FROM %Table:SE2% SE2 WHERE SE2.E2_FILIAL = 'D MG 02 ' AND SE2.E2_PREFIXO = 'CPT' AND SE2.E2_NUM = 'VT001' AND SE2.E2_TIPO = 'NF' AND SE2.E2_FORNECE = 'FIN001' AND SE2.E2_LOJA = '01' AND SE2.%NotDel% EndSql While (cTabSe2)->(!EOF()) SE2->(DbGoto((cTabSe2)->RECNO)) AAdd(aSE2450, {SE2->E2_FILIAL+SE2->E2_PREFIXO+SE2->E2_NUM+SE2->E2_PARCELA+SE2->E2_TIPO+SE2->E2_FORNECE+SE2->E2_LOJA}) If ascan(aFilCmp,SE2->E2_FILIAL) == 0 Aadd(aFilCmp, SE2->E2_FILIAL) EndIf (cTabSe2)->(DbSkip()) Enddo (cTabSe2)->(DbCloseArea()) aAutoCab :={ {"AUTDVENINI450", cTod('27/08/19') , nil},; {"AUTDVENFIM450", cTod('27/08/19') , nil},; {"AUTNLIM450" ,8000, nil},; {"AUTCCLI450" , "FIN001" , nil},; {"AUTCLJCLI" , "01" , nil},; {"AUTCFOR450" , "FIN001" , nil},; {"AUTCLJFOR" , "01" , nil},; {"AUTCMOEDA450" , "01" , nil},; {"AUTNDEBCRED" , 1 , nil},; {"AUTLTITFUTURO", .F. , nil},; {"AUTARECCHAVE" ,aSE1450, nil},; {"AUTAPAGCHAVE" , aSE2450 , nil},; {"AUTAFILCOMP" , aFilCmp , nil}} MSExecAuto({|x,y,z| Fina450(x,y,z)}, nil , aAutoCab , 3 ) If !lMsErroAuto ConOut("Incluido com sucesso! ") confirmsx8() Else ConOut("Erro na inclusao!") rollbacksx8() MostraErro() EndIf RestArea(aArea) Return |
Bloco de código | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
#INCLUDE "TOTVS.ch" #Include "PROTHEUS.ch" #Include "PRTOPDEF.CH" #INCLUDE "TBICONN.CH" User Function F450Est() Local cCliForn := "000001" Local cLoja := "00" Local cPref := "TST" Local cNumPag := "PAG300000" Local cParc := " " Local cTipo := "NF " Local cFilTit := "D MG 01 " Local aAutoCab := {} PRIVATE lMsErroAuto := .F. PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01 " MODULO "FIN" dbSelectArea("SE2") dbSetOrder(1) //E2_FILIAL+E2_PREFIXO+E2_NUM+E2_PARCELA+E2_TIPO+E2_FORNECE+E2_LOJA //Necessário posicionar em um registro da SE2 de um título que esteja envolvido na compensação //Não é necessário posicionar em todos os títulos envolvidos SE2->(Dbseek(cFilTit+cPref + cNumPag + cParc + cTipo + cCliForn + cLoja)) MSExecAuto({|x,y,z| Fina450(x,y,z)}, nil , aAutoCab , 5 ) If !lMsErroAuto ConOut("Estorno realizado com sucesso! ") Else ConOut("Erro no estorno!") MostraErro() EndIf RETURN |
Card documentos | ||||
---|---|---|---|---|
|
04. DEMAIS INFORMAÇÕES
Não há.
05. ASSUNTOS RELACIONADOS
Não há
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; } </style> |
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas