- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Pontos de Entrada
- Filtro para preparação documento de saida
Perguntas Filtro para preparação documento de saida
- vcosta
- Autor do Tópico
- Desconectado
- Membro Dourado
Menos
Mais
- Postagens: 175
- Obrigados Recebidos: 0
5 anos 8 meses atrás #32687
por vcosta
Filtro para preparação documento de saida foi criado por vcosta
Bom dia!
Poderia informar qual ponto de entrada eu poderia utilizar para filtrar os pedidos de venda na preparação do documento de saida (mata460A)
Gostaria de adicionar um novo filtro da tabela C5, seria do vendedor DE ATE
Grato a quer puder ajudar
Poderia informar qual ponto de entrada eu poderia utilizar para filtrar os pedidos de venda na preparação do documento de saida (mata460A)
Gostaria de adicionar um novo filtro da tabela C5, seria do vendedor DE ATE
Grato a quer puder ajudar
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
5 anos 8 meses atrás - 5 anos 8 meses atrás #32688
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Filtro para preparação documento de saida
bom dia segue exemplo:
User Function M460QRY()
Local aArea := GetArea()
Local cFiltro := ParamIxb[1]
Local xFiltro := ParamIxb[1] // Guarda o Filtro Original
Pergunte(Padr("MT461A",Len(SX1->X1_GRUPO)),.F.)
cFiltro += " AND C9_BLCONF = 'OK' AND C9_BLPRE <> '' "
//If !Empty(MV_PAR13)
// cFiltro += " AND C9_REGIAO = '"+MV_PAR13+"' "
//Endif
If MV_PAR14 <> 4
cFiltro += " AND C9_TIPENT = '"+IIf(MV_PAR14=1,"R",IIf(MV_PAR14=2,"C","E"))+"'"
Endif
If !Empty(MV_PAR15)
cFiltro += " AND C9_ROMANEI = '"+MV_PAR15+"'"
Else
cFiltro += " AND C9_ROMANEI = '"+Space(Len(MV_PAR15))+"'"
Endif
SetKey(115, { || U_TotPedF() }) // F4
// Luiz Alberto V Alves - 03-05-12
// Checagem se a Query de Frete irá retornar valores Nullos
// se retornar então o filtro será eliminado, pois
// nestes casos o frete é duplicado.
If 'FRETAUT'$cFiltro
//Processa a Query principal (do processamento)
TCQUERY cFiltro NEW ALIAS QUERY
DbSelectArea("Query")
COUNT TO _nCount
// Se a Query Não Retornar Nenhuma Linha
// e Se o Campo C5_FRETE no Pedido de Vendas
// For Maior que 0, então desconsidera os Filtros
If !Empty(SC5->C5_FRETE) .And. Empty(QUERY->FRETE)
cFiltro := xFiltro
Endif
// Fecha Arquivo Temporário
Query->(dbCloseArea())
Endif
RestArea(aArea)
Return(cFiltro)
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Ultima edição: 5 anos 8 meses atrás por lalberto.
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
5 anos 8 meses atrás #32689
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Filtro para preparação documento de saida
Outro Exemplo, mais simples.
#include "rwmake.ch"
#include "topconn.ch"
/*
ÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜÜ
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
±±ÉÍÍÍÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍÍÍÍÑÍÍÍÍÍÍÍÍÍÍÍÍÍ»±±
±±ºPrograma * M460QRY ºAutor ³Luiz Alberto V Alves º Data ³ 22/01/14 º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºDesc. ³Ponto de entrada para nao trazer pedidos maes na prep. docs º±±
±±ÌÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ͹±±
±±ºUso ³ Genesys º±±
±±ÈÍÍÍÍÍÍÍÍÍÍÏÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ±±
±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±±
ßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßßß
*/
User Function M460QRY()
Local cQuery := ParamIXB[1]
cQuery += " AND NOT EXISTS (SELECT C5_NUM FROM " + RetSqlName("SC5") + " SC5 WHERE SC5.C5_FILIAL = '" + xFilial("SC5") + "' AND SC5.D_E_L_E_T_ = '' AND SC5.C5_GNPDMAE = '1' AND SC5.C5_NUM = SC9.C9_PEDIDO )"
Return cQuery
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Por favor Acessar ou Registrar para participar da conversa.
- vcosta
- Autor do Tópico
- Desconectado
- Membro Dourado
Menos
Mais
- Postagens: 175
- Obrigados Recebidos: 0
5 anos 8 meses atrás #32690
por vcosta
Respondido por vcosta no tópico Filtro para preparação documento de saida
obrigado Luiz alberto,
adicionei um novo filtro nos parâmetros existentes (MT461A)
Vend DE
Vend ATÉ
qual exemplo eu posso utilizar?
adicionei um novo filtro nos parâmetros existentes (MT461A)
Vend DE
Vend ATÉ
qual exemplo eu posso utilizar?
Por favor Acessar ou Registrar para participar da conversa.
- lalberto
- Desconectado
- Administrador
Menos
Mais
- Postagens: 3676
- Obrigados Recebidos: 6
5 anos 8 meses atrás - 5 anos 8 meses atrás #32691
por lalberto
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Respondido por lalberto no tópico Filtro para preparação documento de saida
User Function M460QRY()
Local cQuery := ParamIXB[1]
cQuery += " AND EXISTS (SELECT C5_NUM FROM " + RetSqlName("SC5") + " SC5 WHERE SC5.C5_FILIAL = '" + xFilial("SC5") + "' AND SC5.D_E_L_E_T_ = '' AND SC5.C5_VEND1 BETWEEN '" + MV_PARXX + "' AND '" + MV_PARYY + "' AND SC5.C5_NUM = SC9.C9_PEDIDO )"
Return cQuery
Local cQuery := ParamIXB[1]
cQuery += " AND EXISTS (SELECT C5_NUM FROM " + RetSqlName("SC5") + " SC5 WHERE SC5.C5_FILIAL = '" + xFilial("SC5") + "' AND SC5.D_E_L_E_T_ = '' AND SC5.C5_VEND1 BETWEEN '" + MV_PARXX + "' AND '" + MV_PARYY + "' AND SC5.C5_NUM = SC9.C9_PEDIDO )"
Return cQuery
Luiz Alberto Vieira Alves
Proprietário
55 (12) 9 8256-5905 (Vivo)
www.3lsystems.com.br
www.masteradvpl.com.br
Ultima edição: 5 anos 8 meses atrás por lalberto.
Os seguintes usuário(s) disseram Obrigado: vcosta
Por favor Acessar ou Registrar para participar da conversa.
- vcosta
- Autor do Tópico
- Desconectado
- Membro Dourado
Menos
Mais
- Postagens: 175
- Obrigados Recebidos: 0
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Pontos de Entrada
- Filtro para preparação documento de saida
Tempo para a criação da página:0.135 segundos