Boa tarde, Como faço para formatar a data de uma importação como "dd/mm/yyyy" e não "mm/dd/yyyy". Pois estou trabalhando numa importação de arquivo e na hora de importar esta dando erro por causa do formato. Não posso alterar o arquivo a ser importado. Estou usando o código abaixo para realizar a importação. Código: INPUT FROM "c:\332278518_536796368_2009_5_61_1.txt". REPEAT: CREATE mgesp.fruki-mob-conta-celular. IMPORT mgesp.fruki-mob-conta-celular. END. INPUT CLOSE.
Ola Kiko não sei se entendi bem, mas pelo que pude verificar é que no arquivo importado está vindo a data no formato mm/dd/aaaa; bom neste caso minha sugestão e manipular esta informação antes de gravar diretamente na tabela; Por ex: DEFINE VARIABLE c-data AS CHARACTER NO-UNDO. c-data = string("12312009","99/99/9999") . DEFINE VARIABLE c-dia AS CHARACTER NO-UNDO. DEFINE VARIABLE c-mes AS CHARACTER NO-UNDO. DEFINE VARIABLE c-ano AS CHARACTER NO-UNDO. DEFINE VARIABLE dtAux AS DATE NO-UNDO. assign c-dia = SUBSTRING(c-data,4,2) c-mes = SUBSTRING(c-data,1,2) c-ano = SUBSTRING(c-data,7,4) NO-ERROR . dtAux = DATE (int(c-mes), int(c-dia), int(c-ano)) . MESSAGE dtAux VIEW-AS ALERT-BOX INFO BUTTONS OK
Veja se a lógica abaixo atende sua necessidade: Lembre-se: 01) Mude para mdy antes da abertura do arquivo - INPUT FROM 02) Mude para dmy depois do fechamento do arquivo - INPUT CLOSE. Código: def var dt-data as date format "99/99/9999" no-undo. assign dt-data = 02/28/2009. message "Data Original - Formato Brasileiro: " string(dt-data,"99/99/9999") view-as alert-box. /*** Data no formato dd/mm/aaaa ***/ /*** Mudando para formato Americano ***/ session:date-format = "mdy". message "Data Modificada - Formato Americano: " string(dt-data,"99/99/9999") view-as alert-box. /*** Data no formato mm/dd/aaaa ***/ /*** Mudando para formato Brasileiro ***/ session:date-format = "dmy". message "Data Modificada - Formato Brasileiro: " string(dt-data,"99/99/9999") view-as alert-box. /*** Data no formato dd/mm/aaaa ***/