Microsiga Protheus | Microsiga Protheus | ||||||
Segmento: | Mercado Internacional | ||||||
Módulo: | Financiero | ||||||
Versiones/Release | 11.8 / 12.1.7 / 12.1.14 | Rutina: |
| ||||
Rutina(s) involucrada(s) | Nombre Técnico | Informe la(s) rutina(s) involucrada(s). | Informe el nombre técnico de la(s) rutina(s) involucrada(s).
Descripción: | F850CHPDT () |
País(es): | Todos |
Base(s) de Datos: | Todas |
Tablas utilizadas: |
|
Sistema(s) operativo(s): | Todos. |
Se agrega el punto de entrada F850CHPDT, el cual tiene la finalidad de reemplazar el filtro que se muestra en la orden de pago al agregar un Documento en la pestaña de “Documentos de Terceros”.
1. En el Plan de Salud (SIGAPLS), acceda a Actualizaciones / Producto Salud / Producto Salud (PLSA800).
El sistema exhibe la ventana de productos registrados.
2. Posicione el cursor en un producto y haga clic en Modificar.
3. En la carpeta Cobertura/Carencias, seleccione la subcarpeta Tipo de Prestador.
4. Haga doble clic en el campo TP Prestador (BCW_TIPPRE).
El sistema exhibe la ventana Tipo de Prestador – Coparticipación – Modificación.
5. Informe los datos conforme la orientación del help de campo y observe el rellenado del nuevo campo:
Solo p/Compra (BCW_SOMCOM): seleccione Sí para indicar si la coparticipación registrada será válida solo para efecto de compra de procedimientos o No, en caso contrario.
6. Verifique los datos y confirme.
- 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
Descripción: | Informe el Menú en que se ubicará la rutina. | ||||||||||||||||
Ubicación: | Informe el Submenú donde estará la rutina. | ||||||||||||||||
Eventos: | Informe el Título de la rutina. | ||||||||||||||||
Programa Fuente: | Informe el Fuente de la rutina. | ||||||||||||||||
Función: | Informe el Nombre del(los) producto(s) que se utilizará(n) o “Todos”. | ||||||||||||||||
Respuesta: |
|
Ejemplo:
#Include 'Protheus.ch'
User Function CN120ALT()
Local aCab:= PARAMIXB[1]
Local cTipo:= PARAMIXB[2]
If cTipo == '1'
aCab[4][2]:= 'Fact' //Validaciones del usuario
EndIf
Return aCab