Perguntas [iReport] Conversão String to Data

Mais
9 anos 7 meses atrás #27910 por douglasedp
Pessoal, Boa Tarde

Estou usando o ireport para criar um relatório o qual os dados se encontra em uma base SQL Server. Como sou novo no assunto estou com grande dificuldade em dois pontos.

1) Tenho um campo que será apresentado como Data no relatório, porém o mesmo vêm do banco em String.

Exemplo : O campo vem com o valor 20150408 , em string mas preciso apresentá-lo como 08/04/2015.

Portanto, preciso fazer essa conversão. É possivel? Como proceder?

2) Meu segundo problema também está relacionado á data. Preciso criar alguns parâmetros para filtrar por data os dados. Porém é necessário que o usuário digite no formato Data ( dddd-mm-yyyy), mas no meu banco de dados está gravado como string ( 2015040. Existe possibilidade de fazer a conversão no parâmetro? Da forma de data , para string , como esta no Banco? Seria ao contrário do problema acima, porem trata-se de um parametro.

Conto com a compreensão de todos.

At. Douglas Eduardo

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 7 meses atrás #27917 por luizalbertovieiraalves
Você montou um query para ler a base de dados ? se sim, coloca como exemplo SELECT F2_DOC, Cast(E2_EMISSAO as Date) E2_EMISSAO FROM SF2010

Luiz Alberto V Alves
(12) 9 8256-5905
Proprietário 3L Systems e MasterAdvpl

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 7 meses atrás #27920 por Eduardo TI
Você também pode usar a DATA assim:

Use o TCSetField para coverter o string da data para Data Normal.


If Select("QSE2") > 0
QSE2->(dbCloseArea())
Endif
cQuery := "Select E2_FILIAL, E2_PREFIXO, E2_NUM, E2_PARCELA, E2_TIPO, E2_FORNECE, E2_LOJA, E2_NOMFOR, E2_EMISSAO, E2_VENCTO, E2_VENCREA, E2_VALOR, E2_BAIXA, E2_NUMBOR"
cQuery += " from "+RetSqlName("SE2")+" "
cQuery += " where E2_VENCREA = '"+dTos(MV_PAR01)+"' and E2_PREFIXO IN "+Kfilial+" "
cQuery += " and E2_FORNECE >= '"+MV_PAR02+"' and E2_FORNECE <= '"+MV_PAR03+"'"
cQuery += " and E2_LOJA >= '"+MV_PAR04+"' and E2_LOJA <= '"+MV_PAR05+"'"
cQuery += " and E2_TIPO = '"+MV_PAR06+"' and E2_NATUREZ = '"+MV_PAR07+"'"
cQuery += " and E2_BAIXA = ' ' and D_E_L_E_T_ = ' ' "
cQuery += " order by E2_FILIAL, E2_PREFIXO, E2_FORNECE, E2_LOJA, E2_NUM, E2_VENCTO"
TcQuery cQuery New Alias "QSE2"
TCSetField("QSE2","E2_EMISSAO","D")
TCSetField("QSE2","E2_VENCTO","D")
TCSetField("QSE2","E2_VENCREA","D")

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 7 meses atrás #27923 por douglasedp
Pessoal, Bom Dia

Luiz , tentei usar o CAST , mas ele não está convertendo o tipo para date, apesar de aparecer no formato 2015-04-10 , o tipo continua string. Ai nao consigo formatar usando o Pattern do Ireport para a máscara que quero dd/MM/yyyy. Segue print.



Eduardo, Esse TCField é em advpl correto? Pois estou montando o relatório via ireport, e faço somente a cnsulta no banco. È possivel usar esse comando na busca no SQL?

At. Douglas Eduardo
Anexos:

Por favor Acessar ou Registrar para participar da conversa.

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