Perguntas relatório com parametro de data

Mais
9 anos 4 meses atrás #28606 por daniMiranda
Bom dia amigos.

estou com um problema para que meu relatório, no momento que eu digitara data apareça o calendário para selecionar (aparece uma consulta padrão de compras). já tentei utilizar Dtos, Dtoc e nada:

o relatório é o font abaixo:

//**************************************************************************************
#include "PROTHEUS.ch"

User Function tRepFis_1()

Local oReport


//Criando o grupo de pergunta
CriaPerg()

//Carregando os dados da pergunta
Pergunte("QUALDATA",.F.) //carrega o x1 e grava na memoria

//Chando a Função para criar a estrutura do relatorio
oReport := ReportDef()

//Imprimindo o Relatorio
oReport:PrintDialog()


Return( Nil )
//***********************************************************************************************************************************

Static Function ReportDef()

Local oReport
Local oSection
Local oBreak

// Criando a o Objeto

oReport := TReport():New("APURACAO","RELATORIO ENTRADAS","QUALDATA",{|oReport| PrintReport(oReport)},"APURAÇÃO ENTRADAS PRODEPE")

oSection := TRSection():New(oReport,"APURACAO ICMS e IPI",{"SD1"} )

TRCell():New(oSection,"D1_DTDIGIT" , "SD1")
TRCell():New(oSection,"D1_DOC" , "SD1")
TRCell():New(oSection,"D1_COD" , "SD1")
TRCell():New(oSection,"B1_DESC" , "SB1")
TRCell():New(oSection,"D1_CLASFIS" , "SD1")
TRCell():New(oSection,"B1_POSIPI" , "SB1")
TRCell():New(oSection,"A1_EST" , "SA1")
TRCell():New(oSection,"B5_CODAPU" , "SB5")
TRCell():New(oSection,"APURACAO" , "SB5")
TRCell():New(oSection,"B5_CODAPU" , "SB5")
TRCell():New(oSection,"D1_SERIE" , "SD1")
TRCell():New(oSection,"D1_MODELO" , "SD1")
TRCell():New(oSection,"D1_TES" , "SD1")
TRCell():New(oSection,"D1_CF" , "SD1")
TRCell():New(oSection,"D1_QUANT" , "SD1")
TRCell():New(oSection,"D1_TOTAL" , "SD1")
TRCell():New(oSection,"D1_PICM" , "SD1")
TRCell():New(oSection,"D1_BASEICM" , "SD1")
TRCell():New(oSection,"D1_VALICM" , "SD1")
TRCell():New(oSection,"D1_IPI" , "SD1")
TRCell():New(oSection,"D1_VALIPI" , "SD1")
TRCell():New(oSection,"D1_VALFRE" , "SD1")
TRCell():New(oSection,"D1_MARGEM" , "SD1")
TRCell():New(oSection,"D1_BRICMS" , "SD1")
TRCell():New(oSection,"D1_ICMSRET" , "SD1")
TRCell():New(oSection,"D1_DESC" , "SD1")
TRCell():New(oSection,"D1_DESPESA" , "SD1")
TRCell():New(oSection,"D1_SEGURO" , "SD1")

// Quebra por Vendedor
//oBreak := TRBreak():New(oSection,oSection:Cell("A1_VEND"),"Sub Total Vendedores")
//Fazendo a contagem por codigo
// TRFunction():New(oSection:Cell("A1_COD" ), NIL, "COUNT", oBreak)


Return ( oReport )

//*******************************************************************************************

Static Function PrintReport(oReport)
Local oSection := oReport:Section(1)
Local dpart := date()
//Local dDate := cPart


oSection:BeginQuery()



dPart := "% AND D1_DTDIGIT >= '" + MV_PAR01 + "' "
dPart := " AND D1_DTDIGIT <= '" + MV_PAR02 + "' %"

//cPart := "%%"

BeginSql alias "QRYSD1"

//column D1_DTDIGIT as Date

select D1_DTDIGIT,
D1_DOC,
D1_COD,
B1_DESC,
D1_CLASFIS,
B1_POSIPI,
A1_EST,
B5_CODAPU,
CASE WHEN B5_CODAPU = '02' THEN 'INCENTIVO_REVENDA'
WHEN B5_CODAPU = '01' THEN 'NAO_INCENTIVADO'
WHEN B5_CODAPU = '03' THEN 'INCENTIVADO' ELSE '-' END AS APURACAO,
D1_SERIE,
D1_MODELO,
D1_TES,
D1_CF,
D1_QUANT,
D1_TOTAL,
D1_PICM ,
D1_BASEICM,
D1_VALICM,
D1_IPI ,
D1_VALIPI,
D1_VALFRE,
D1_MARGEM,
D1_BRICMS,
D1_ICMSRET,
D1_DESC,
D1_DESPESA,
D1_SEGURO
from %Table:SD1% LEFT OUTER JOIN %Table:SB1% ON (B1_COD = D1_COD)
LEFT OUTER JOIN %Table:SB5% ON (B5_COD = B1_COD AND B5.D_E_L_E_T_ <> '*')
LEFT OUTER JOIN %Table:SA1% (A1_COD = D1_FORNECE )
WHERE D1.D_E_L_E_T_ <> '*'
AND B1.D_E_L_E_T_ <> '*'
AND B5.D_E_L_E_T_ <> '*'
AND D1_FILIAL = %xFilial:SD1%

%exp:cPart%

ORDER BY D1_DTDIGIT

EndSql

aRetSql := GetLastQuery()



//memowrite("C:\sql.txt",aRetSql[2])

oSection:EndQuery()


oSection:Print()

Return( Nil )

//=====================================================================================================================


Static Function CriaPerg()

cPerg:= "QUALDATA"



//Criação de pergunta no arquivo SX1
//PutSX1(cGrupo,cOrdem,cPergunt ,cPergSpa,cPergEng,cVar ,cTipo,nTamanho,nDecimal,nPreSel,cGSC,cValid,cF3 ,cGrpSXG, [ cPyme], < cVar01>, [ cDef01], [ cDefSpa1], [ cDefEng1], [ cCnt01], [ cDef02], [ cDefSpa2], [ cDefEng2], [ cDef03], [ cDefSpa3], [ cDefEng3], [ cDef04], [ cDefSpa4], [ cDefEng4], [ cDef05], [ cDefSpa5], [ cDefEng5], [ aHelpPor], [ aHelpEng], [ aHelpSpa], [ cHelp] )
PutSx1( cPerg,"01", "Data Digit. de " ,"" ,"" ,"mv_ch1","D" ,8 ,0 ,0 ,"G" ,"" ,"SD1","" ,"","MV_PAR01","","","","","","","","","","","","","","","","",{""},{""},{""},"")
PutSx1( cPerg,"02", "Data Digit. Até" ,"" ,"" ,"mv_ch2","D" ,8 ,0 ,0 ,"G","","SD1","","","MV_PAR02","","","","","","","","","","","","","","","","",{""},{""},{""},"")

Return()

//************************************************************************************************

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 4 meses atrás #28607 por lalberto
Respondido por lalberto no tópico relatório com parametro de data
Danielle bom dia, apague o grupo de perguntas criado na sx1 (QUALDATA)

e altere no fonte eliminando no vetor o alias SD1, deixe apenas ""

//Criação de pergunta no arquivo SX1
//PutSX1(cGrupo,cOrdem,cPergunt ,cPergSpa,cPergEng,cVar ,cTipo,nTamanho,nDecimal,nPreSel,cGSC,cValid,cF3 ,cGrpSXG, [ cPyme], < cVar01>, [ cDef01], [ cDefSpa1], [ cDefEng1], [ cCnt01], [ cDef02], [ cDefSpa2], [ cDefEng2], [ cDef03], [ cDefSpa3], [ cDefEng3], [ cDef04], [ cDefSpa4], [ cDefEng4], [ cDef05], [ cDefSpa5], [ cDefEng5], [ aHelpPor], [ aHelpEng], [ aHelpSpa], [ cHelp] )
PutSx1( cPerg,"01", "Data Digit. de " ,"" ,"" ,"mv_ch1","D" ,8 ,0 ,0 ,"G" ,"" ,"SD1","" ,"","MV_PAR01","","","","","","","","","","","","","","","","",{""},{""},{""},"")
PutSx1( cPerg,"02", "Data Digit. Até" ,"" ,"" ,"mv_ch2","D" ,8 ,0 ,0 ,"G","","SD1","","","MV_PAR02","","","","","","","","","","","","","","","","",{""},{""},{""},"")

Return()

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.

Mais
9 anos 4 meses atrás #28608 por daniMiranda
Respondido por daniMiranda no tópico relatório com parametro de data
Luiz, muito obrigada pelo breve retorno, porém apaguei e não funcionou. quando eu vou digitar a data nos parâmetros (o filtro de data), não aparece o calendário e sim uma consulta padrão.

veja este print em anexo.

Arquivo Anexo:

Nome do Arquivo: data.docx
Tamanho do Arquivo:215 KB
Anexos:

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 4 meses atrás #28610 por lalberto
Respondido por lalberto no tópico relatório com parametro de data
Danielle lá no vetor aonde vc cria as perguntas, aonde esta "SD1" troca por "" esse é o problema, apague a pergunta novamente na sx1, altere o fonte conforme mencionei acima, compile novamente, ai verá que irá aparecer o calendário ok.

Abraços

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.

Mais
9 anos 4 meses atrás #28612 por daniMiranda
Respondido por daniMiranda no tópico relatório com parametro de data
FUNCIONOU!!!! UHULLLLLL!!!!

Luiz muito obrigada. Fiz o curso avançado de ADVPL recentemente e já desenvolvi alguns relatórios, mas com Data é o primeiro.

Que bom que podemos contar com pessoas como você, pois meus amigos desde ontem não me responderam.

(acho que não são amigos) rsrsrsrs

Atc,

Danielle.

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 4 meses atrás #28615 por lalberto
Respondido por lalberto no tópico relatório com parametro de data
Legal Dani conte com a galera aqui do masteradvpl e divulgue o site aos amigos e não amigos ahahah.

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.

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