× Linguagem de Programação ADVPL

Perguntas Ajuda com query

Mais
11 anos 6 dias atrás #18623 por ftvernier
Ajuda com query foi criado por ftvernier
Fala Galera Blz?

Fiz uma query para capturar alguns dados e me apresentar em um relatório.

Porém ela só está me trazendo a data da baixa de títulos que entraram pela rotina FINA050 e não pelo documento de entrada que é o MATA100.

Poderiam me dar uma ajuda?

Valeu


cQueryCad := " SELECT DISTINCT 'SD1' TIPO, CTT_CUSTO, CTT_CCSUP, CTT_DESC01, D1.D1_DOC E2_NUM, D1.D1_SERIE E2_PREFIXO, D1.D1_FORNECE E2_FORNECE, D1.D1_LOJA E2_LOJA, E2.E2_VALOR VALOR_PAGO, SUM(D1.D1_TOTAL) VALOR_TOTAL "
cQueryCad += " FROM " + RETSQLNAME("CTT") + " CTT (NOLOCK) "
cQueryCad += " LEFT JOIN " + RETSQLNAME("SD1") + " D1 (NOLOCK) ON D1.D1_CC = CTT_CUSTO AND D1.D_E_L_E_T_ = '' "
cQueryCad += " AND D1_TIPO = 'N' INNER JOIN SF4010 F4 (NOLOCK) ON D1.D1_TES = F4.F4_CODIGO "
cQueryCad += " AND F4.D_E_L_E_T_ = '' AND F4.F4_DUPLIC = 'S' "
cQueryCad += " INNER JOIN " + RETSQLNAME("SE2") + " E2 (NOLOCK) "
cQueryCad += " ON D1.D1_DOC = E2.E2_NUM AND D1.D1_FORNECE = E2.E2_FORNECE AND D1.D1_LOJA = E2.E2_LOJA "
cQueryCad += " AND D1.D1_SERIE = E2.E2_PREFIXO AND E2.D_E_L_E_T_ = '' AND E2_BAIXA BETWEEN '" + DtoS(MV_PAR01) + "' AND '" + DtoS(MV_PAR02) + "' "
cQueryCad += " INNER JOIN " + RETSQLNAME("SF1") + " F1 (NOLOCK) "
cQueryCad += " ON D1.D1_DOC = F1.F1_DOC AND D1.D1_SERIE = F1.F1_SERIE AND D1.D1_FORNECE = F1.F1_FORNECE AND D1.D1_LOJA = F1.F1_LOJA "
cQueryCad += " WHERE CTT_BLOQ <> '1' AND CTT_CLASSE <> '1' AND CTT.D_E_L_E_T_ = '' AND CTT.CTT_CUSTO BETWEEN '" + MV_PAR03 + "' AND '" + MV_PAR04 + "' "
cQueryCad += " GROUP BY CTT_CUSTO, CTT_CCSUP, CTT_DESC01, D1.D1_DOC, D1.D1_SERIE, D1.D1_FORNECE, D1.D1_LOJA, E2.E2_VALOR "

cQueryCad += " UNION "

cQueryCad += " SELECT DISTINCT 'SE2' TIPO, CTT_CUSTO, CTT_CCSUP, CTT_DESC01, E2.E2_NUM, E2.E2_PREFIXO, E2.E2_FORNECE, E2.E2_LOJA, E2.E2_VALOR VALOR_PAGO, E2.E2_VALOR VALOR_TOTAL "
cQueryCad += " FROM " + RETSQLNAME("CTT") + " CTT (NOLOCK) "
cQueryCad += " INNER JOIN " + RETSQLNAME("SE2") + " E2 (NOLOCK) "
cQueryCad += " ON E2.E2_CCUSTO = CTT.CTT_CUSTO AND E2.D_E_L_E_T_ = '' AND E2_BAIXA BETWEEN '" + DtoS(MV_PAR01) + "' AND '" + DtoS(MV_PAR02) + "' "
cQueryCad += " WHERE CTT_BLOQ <> '1' AND CTT_CLASSE <> '1' AND CTT.D_E_L_E_T_ = '' AND CTT.CTT_CUSTO BETWEEN '" + MV_PAR03 + "' AND '" + MV_PAR04 + "' "
cQueryCad += " AND NOT EXISTS(SELECT 'Z' FROM " + RETSQLNAME("SF1") + " F1 (NOLOCK) WHERE F1.F1_DOC = E2.E2_NUM AND F1.F1_SERIE = E2.E2_PREFIXO AND F1.F1_FORNECE = E2.E2_FORNECE AND F1.F1_LOJA = E2.E2_LOJA AND F1.D_E_L_E_T_ = '' AND F1.F1_TIPO = 'N') "
cQueryCad += " ORDER BY CTT_CUSTO "

Por favor Acessar ou Registrar para participar da conversa.

Mais
11 anos 6 dias atrás #18640 por will3698
Respondido por will3698 no tópico Ajuda com query
Ola bom dia !

Poderia postar a query fora do advpl.. em sql ???

Att

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.075 segundos
Joomla templates by a4joomla