Histórico da Página
Ponto de Entrada - LjRAQryO
Este Ponto de Entrada é executado na rotina LJRetailApp , para considerar a query do cliente para ser executada e enviar os dados das vendas.
Descrição: | Miscelânea\RetailApp | |||||||||
Eventos: | Integração Protheus x RetailApp | |||||||||
Programa Fonte: | LJRetailApp | |||||||||
Função: | Protheus | |||||||||
Parâmetos: |
| |||||||||
Retorno: |
|
Exemplo:
#Include 'Protheus.ch'
User Function LjRAQryO()
Local aArea := GetArea()
Local cDtIni:= ParamIxb[1]
Local cFiliais:= ParamIxb[2]
Local cQuery := ""
cQuery := "SELECT SUM(D2_DESCON) D2DESCON, D2_DOC DOC, D2_SERIE SERIE, D2_COD COD, SUM(D2_QUANT) QTDE, SUM(D2_TOTAL) TOTAL, D2_EMISSAO EMISSAO, F2_HORA HORA, D2_FILIAL FILIAL, F2_VEND1, D2_GRUPO GRUPO, D2_CLIENTE CLIENTE, D2_LOJA LOJA, 'SD2' ALIAS, SF2.R_E_C_N_O_ RECNO, SB1.B1_DESC DESCRICAO"
cQuery += " FROM " + RetSqlName('SD2') + " SD2"
cQuery += " INNER JOIN " + RetSqlName('SF2') + " SF2 ON "
cQuery += " SD2.D2_FILIAL = SF2.F2_FILIAL AND SD2.D2_DOC = SF2.F2_DOC AND SD2.D2_SERIE = SF2.F2_SERIE AND SD2.D2_CLIENTE = SF2.F2_CLIENTE AND SD2.D2_LOJA = SF2.F2_LOJA"
cQuery += " WHERE "
cQuery += " LEFT JOIN " + RetSqlName('SB1') + " SB1 ON SB1.B1_FILIAL = '" + xFilial('SB1') + "' AND SD2.D2_FILIAL IN COD = SB1.B1_COD"
cQuery += " WHERE "
cQuery += " (SF2.F2_NFCUPOM = ' ' OR SF2.F2_ESPECIE IN ('CF','ECF','NFCE','SATCE')) AND " //FILTRO SOMENTE AS NOTAS DAS VENDAS (EXCLUINDO AS NOTAS SOBRE CUPONS) (" + cFiliais + ") AND "
cQuery += " SD2.D2_DOC <> ' ' AND SD2.D2_EMISSAO >= '" + cBeginDate + "' AND SD2.D2_TES IN ('501') AND (" + LjQueryIN(cTes) + ")"
cQuery += " AND SD2.D2_TIPO = 'N' AND SD2.D_E_L_E_T_ = ' ' AND SF2.D_E_L_E_T_ = ' ' "
cQuery += " GROUP BY D2_DOC, D2_SERIE, D2_COD, D2_EMISSAO, F2_HORA, D2_FILIAL, F2_VEND1, D2_GRUPO, D2_CLIENTE, D2_LOJA, SF2.R_E_C_N_O_, SB1.B1_DESC "
cQuery += " UNION ALL "
cQuery += " SELECT SUM(D1_VALDESC) D2DESCON, D1_DOC DOC, D1_SERIE SERIE, D1_COD COD, SUM(D1_QUANT) QTDE, SUM(D1_TOTAL) TOTAL, D1_EMISSAO EMISSAO, F1_HORA HORA, D1_FILIAL FILIAL, F2_VEND1, D1_GRUPO GRUPO, D1_FORNECE CLIENTE, D1_LOJA LOJA, 'SD1' ALIAS, SF1.R_E_C_N_O_ RECNO, SB1.B1_DESC DESCRICAO"
cQuery += " FROM " + RetSqlName('SD1') + " SD1"
cQuery += " INNER JOIN " + RetSqlName('SF1') + " SF1 ON SD1.D1_FILIAL = SF1.F1_FILIAL AND SD1.D1_DOC = SF1.F1_DOC AND SD1.D1_SERIE = SF1.F1_SERIE AND SD1.D1_FORNECE = SF1.F1_FORNECE AND SD1.D1_LOJA = SF1.F1_LOJA AND SF1.D_E_L_E_T_ = ' '"
cQuery += " INNER JOIN " + RetSqlName('SD2') + " SD2 ON SD1.D1_FILORI = SD2.D2_FILIAL AND SD1.D1_NFORI = SD2.D2_DOC AND SD1.D1_SERIORI = SD2.D2_SERIE AND SD1.D1_ITEMORI = SD2.D2_ITEM AND SD1.D1_COD = SD2.D2_COD AND SD2.D_E_L_E_T_ = ' '"
cQuery += " INNER JOIN " + RetSqlName('SF2') + " SF2 ON SD2.D2_FILIAL = SF2.F2_FILIAL AND SD2.D2_DOC = SF2.F2_DOC AND SD2.D2_SERIE = SF2.F2_SERIE AND SD2.D2_CLIENTE = SF2.F2_CLIENTE AND SD2.D2_LOJA = SF2.F2_LOJA AND SF2.D_E_L_E_T_ = ' '"
cQuery += " LEFT JOIN " + RetSqlName('SB1') + " SB1 ON SB1.B1_FILIAL = '" + xFilial('SB1') + "' AND SD1.D1_COD = SB1.B1_COD"
cQuery += " WHERE"
cQuery += " SD1.D1_FILIAL IN (" + cFiliais + ") AND "
cQuery += " SD1.D1_EMISSAO >= '" + cBeginDate + "' AND "
cQuery += " SD1.D1_DOC <> ' ' AND "
cQuery += " SD1.D1_TIPO = 'D' AND "
cQuery += " SD1.D_E_L_E_T_ = ' ' "
cQuery += " GROUP BY D1_DOC, D1_SERIE, D1_COD, D1_EMISSAO, F1_HORA, D1_FILIAL, F2_VEND1, D1_GRUPO, D1_FORNECE, D1_LOJA, SF1.R_E_C_N_O_, SB1.B1_DESC "
cQuery += " ORDER BY FILIAL, EMISSAO"
RestArea(aArea)
Return cQuery