Página 1 de 1

Mudar Nome do arquivo a Ser Salvo (HMG)

Enviado: 07 Mar 2013 12:28
por guanabara
Boa tarde a todos, criei um botão para exportar os dados da grid com o código abaixo e funciona muito bem, só que eu queria que o nome do arquivo fosse uma variavel conforme uma que tenho no código que é cProcura, como faço ?

Código: Selecionar todos

Function main_botaoexporta_action()

Arquivo := HB_OemToAnsi( MemoRead( "TESTE.CSV" ) )
MemoWrit( "TESTE.CSV", Arquivo )

copy to teste.csv delimited with ({chr(34), ";"})

msgbox( "Arquivos Exportados com Sucesso ! " ) 

Return Nil

Mudar Nome do arquivo a Ser Salvo (HMG)

Enviado: 07 Mar 2013 12:40
por Pablo César
Use hb_memowrit em lugar de memowrit, permitindo gravar com nomes longos,se esse for o caso.

copy to (&cProcura) delimited with ({chr(34), ";"}) (não testei mas acho que é isso).

Antes de usar o copy o dbf tem que estar aberto.

Código: Selecionar todos

Arquivo := HB_OemToAnsi( MemoRead( "TESTE.CSV" ) )
MemoWrit( "TESTE.CSV", Arquivo )
	 
copy to teste.csv delimited with ({chr(34), ";"})
Mas me diga, para quê é teste.csv ? Ahhh sim entendi, que você gera a planilha. Mas dessa forma você estaria sobre-escrevendo o arquivo lido pela geração do arquivo. Não seria ao contrário ?

Código: Selecionar todos

copy to (&cProcura) delimited with ({chr(34), ";"})

Arquivo := HB_OemToAnsi( MemoRead( cProcura ) )
hb_MemoWrit( cProcura, Arquivo )
Explique melhor o que você precisa.

Mudar Nome do arquivo a Ser Salvo (HMG)

Enviado: 07 Mar 2013 19:44
por guanabara
Preciso que os nomes dos arquivos criados fiquem iguais ao mesmo nome que digito no campo da pesquisa, tipo se pesquisar o Municipio de Aracatuba, o nome do arquivo ficara Aracatuba.csv e assim por diante.

Mudar Nome do arquivo a Ser Salvo (HMG)

Enviado: 07 Mar 2013 20:06
por Pablo César
Entendi. E o código indicado que eu fiz na mensagem anterior, não serviu ? Dá erro ? Qual erro ?

A variável cprocura deve ser atribuido com o conteúdo do TEXTBOX GetPesq, mas lembre não pode ser valor vazio. Sabe como pegar o valor do TEXTBOX ? (veja o primeiro código que passei).

Mudar Nome do arquivo a Ser Salvo (HMG)

Enviado: 07 Mar 2013 20:45
por guanabara
Pablo César escreveu:Entendi. E o código indicado que eu fiz na mensagem anterior, não serviu ?
Não.
Pablo César escreveu:Dá erro ?
Dá Sim.
Pablo César escreveu: Qual erro ?
O erro está em anexo.
Pablo César escreveu:A variável cprocura deve ser atribuido com o conteúdo do TEXTBOX GetPesq, mas lembre não pode ser valor vazio. Sabe como pegar o valor do TEXTBOX ? (veja o primeiro código que passei).
Ela está sim atribuida com o conteúdo do TEXTBOX. Sei sim como pegar o valor do TEXTBOX. Fiz até um teste que achei bacana pra descobrir o conteúdo das variáveis naquele momento do programa com o seguinte código :

Código: Selecionar todos

msgbox(cProcura)
com esse codigo me retornou o nome da cidade.

e o código atual que está dando erro é este:

Código: Selecionar todos

Function main_botaoexportacao_action()

Arquivo := HB_OemToAnsi( MemoRead( "TESTE.CSV" ) ) 
hb_MemoWrit( "TESTE.CSV", Arquivo ) 
 
copy to (&cProcura) delimited with ({chr(34), ";"})



Return Nil

Mudar Nome do arquivo a Ser Salvo (HMG)

Enviado: 07 Mar 2013 22:45
por Pablo César
guanabara escreveu:com esse codigo me retornou o nome da cidade.

e o código atual que está dando erro é este:

Código: Selecionar todos

Function main_botaoexportacao_action()

Arquivo := HB_OemToAnsi( MemoRead( "TESTE.CSV" ) ) 
hb_MemoWrit( "TESTE.CSV", Arquivo ) 
 
copy to (&cProcura) delimited with ({chr(34), ";"})

Return Nil
Mas não é este o código que indiquei. Leia atentamente a minha mensagem: https://pctoledo.org/forum/viewto ... 955#p81144 onde questiono a você (você não respondeu a isto) e indico o seguinte código:

Código: Selecionar todos

copy to (&cProcura) delimited with ({chr(34), ";"})

Arquivo := HB_OemToAnsi( MemoRead( cProcura ) )
hb_MemoWrit( cProcura, Arquivo )
Era este código que você deveria utilizar.

Quanto a este erro: Imagem é justamente por você não adicionou a atribuição da variável cProcura como tinha indicado antes. Coloque dentro da função onde gera a planilha (no código que indiquei (mas acima dessa linhas).

Mudar Nome do arquivo a Ser Salvo (HMG)

Enviado: 11 Mar 2013 00:14
por guanabara
Mas não é este o código que indiquei. Leia atentamente a minha mensagem: posting.php?mode=reply&f=45&t=13955#pr81144 onde questiono a você (você não respondeu a isto) e indico o seguinte código:
Agora entendi, é que copiei o comando inteiro daqui do Forum e o que realmente necessito é somente esta linha: copy to (&cProcura) delimited with ({chr(34), ";"}), as outras linhas não há necessidade, e se houvesse o mesmo estava invertido....

Consegui, aleluia, aleluia, obrigado mesmo pelo inicio de tudo, consegui rodar o comando assim:

Código: Selecionar todos

copy to (cProcura + ".CSV") delimited with ({chr(34), ";"})
Então com o código acima consigo gerar um arquivo com o mesmo nome que é usado na pesquisa com a extensão *.CSV que pode ser lido no Excel, tudo bem que seria melhor se gerasse em XML, mais pra frente o farei, um passo de cada vez, né Pablo..... Valeu...