• A Confluence está sendo executada atualmente com todos os plugins que não são do sistema desabilitados. Pode haver perda de algumas funcionalidades

Punto de entrada F850CHPDT

Características del Requisito

Microsiga Protheus

Microsiga Protheus

Segmento:

Mercado Internacional

Módulo:

Financiero

Versiones/Release

11.8 / 12.1.7 / 12.1.14

Punto de Entrada

Descripción:

F850CHPDT - Punto de entrada que permite filtrar los documentos de terceros.

Ubicación:

Financiero

Eventos:

Alteración

Programa Fuente:

Fina850.prw

Función:

F850FilDT()

Retorno:

Array con dos posiciones:

[ 1 ] = Moneda Seleccionada

[ 2 ] = Matriz de títulos seleccionados, el contenido por cada registro es un subarreglo con los siguientes datos:

{.F.,

E1_TIPO,

E1_PREFIXO,

E1_NUM,

E1_PARCELA,

Ctod(substr((cArqTemp)->E1_EMISSAO,7,2)+"/"+substr((cArqTemp)->E1_EMISSAO,5,2)+"/"+substr((cArqTemp)->E1_EMISSAO,1,4)),

Ctod(substr((cArqTemp)->E1_VENCREA,7,2)+"/"+substr((cArqTemp)->E1_VENCREA,5,2)+"/"+substr((cArqTemp)->E1_VENCREA,1,4)),

E1_SALDO,

E1_MOEDA,

E1_CLIENTE,

E1_LOJA,

E1_NOMCLI,

E1_BCOCHQ,

E1_AGECHQ,

E1_CTACHQ,

E1_POSTAL,

SE1.R_E_C_N_O_,

SEF.R_E_C_N_O_

}

 

 Ejemplo:

#include 'Protheus.ch'
user function F850CHPDT()
Local cQuery := ""
Local cArqTmp := ""
Local aDocs99 := {}
Local nMoedaS := 1

Aadd(aDocs99,nMoedaS)
cQuery := "SELECT SE1.R_E_C_N_O_ REGSE1,E1_TIPO,E1_PREFIXO,E1_NUM,E1_PARCELA, E1_EMISSAO,E1_VENCREA,E1_SALDO,E1_MOEDA,E1_CLIENTE,E1_LOJA,E1_NOMCLI, "
cQuery += "E1_BCOCHQ,E1_AGECHQ,E1_CTACHQ,E1_POSTAL,SE1.E1_ORIGEM,EF_BANCO,EF_AGENCIA,EF_CONTA,EF_CART,EF_TERCEIR,EF_ENDOSSA,SEF.R_E_C_N_O_ REGSEF,SEL.EL_ENDOSSA, "
cQuery += "SEL.EL_TERCEIR,EL_VERSAO,EL_RECIBO FROM SE1T10 SE1 LEFT JOIN SELT10 SEL ON SEL.EL_PREFIXO = SE1.E1_PREFIXO AND SEL.EL_NUMERO = "
cQuery += "SE1.E1_NUM AND SEL.EL_PARCELA = SE1.E1_PARCELA AND SEL.EL_CLIENTE = SE1.E1_CLIENTE AND SEL.EL_LOJA = SE1.E1_LOJA LEFT JOIN SEFT10 SEF ON "
cQuery += "(SEF.EF_FILIAL = 'D MG 01 ' AND SE1.E1_PREFIXO = SEF.EF_PREFIXO AND SE1.E1_NUM = SEF.EF_NUM AND SE1.E1_PARCELA = SEF.EF_PARCELA AND "
cQuery += "SE1.E1_TIPO = SEF.EF_TIPO AND SEF.EF_TIPO IN ('CH ','CHC','CH ') AND SE1.E1_CLIENTE = SEF.EF_CLIENTE AND SEF.EF_CART = 'R' "
cQuery += "AND SEF.EF_ENDOSSA = '1' AND SEF.EF_STATUS = '01') WHERE E1_FILIAL = 'D MG 01 ' AND E1_TIPO = 'CH' AND E1_CLIENTE = '000001' "
cQuery += "AND E1_LOJA = '01' AND E1_VENCREA >= '20150801' AND E1_VENCREA <= '20171212' AND E1_SALDO > 0 AND E1_SITUACA IN (' ','1','0') AND E1_NUMBOR = ' ' "
cQuery += "AND SE1.D_E_L_E_T_=' ' AND E1_TIPO <> 'NCC' AND E1_TIPO <> 'NDC' AND E1_TIPO <> 'NCI' AND E1_TIPO <> 'NCE' AND E1_MOEDA = 1 "
cQuery += "ORDER BY E1_TIPO,E1_CLIENTE,E1_LOJA,E1_VENCREA,E1_PREFIXO,E1_PARCELA,E1_NUM"
cQuery := ChangeQuery(cQuery)
cArqTemp := CriaTrab(nil, .f.)
DbUseArea(.T., "TOPCONN", TCGenQry(,,cQuery), cArqTemp, .F., .T.)
(cArqTemp)->(DbGotop())
Aadd(aDocs99,{})
DbSelectArea(cArqTemp)


While (cArqTemp)->(!Eof())


Aadd(aDocs99[2],{.F.,(cArqTemp)->E1_TIPO,;
(cArqTemp)->E1_PREFIXO,(cArqTemp)->E1_NUM,;
(cArqTemp)->E1_PARCELA,;
Ctod(substr((cArqTemp)->E1_EMISSAO,7,2)+"/"+substr((cArqTemp)->E1_EMISSAO,5,2)+"/"+substr((cArqTemp)->E1_EMISSAO,1,4)),;
Ctod(substr((cArqTemp)->E1_VENCREA,7,2)+"/"+substr((cArqTemp)->E1_VENCREA,5,2)+"/"+substr((cArqTemp)->E1_VENCREA,1,4)),;
(cArqTemp)->E1_SALDO ,;
(cArqTemp)->E1_MOEDA ,(cArqTemp)->E1_CLIENTE,(cArqTemp)->E1_LOJA ,(cArqTemp)->E1_NOMCLI ,;
(cArqTemp)->E1_BCOCHQ,(cArqTemp)->E1_AGECHQ ,(cArqTemp)->E1_CTACHQ,(cArqTemp)->E1_POSTAL ,;
(cArqTemp)->REGSE1,(cArqTemp)->REGSEF })
(cArqTemp)->(Dbskip())

EndDo

Return aDocs99