Mudar Nome do arquivo a Ser Salvo (HMG)

Projeto MiniGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

guanabara
Usuário Nível 1
Usuário Nível 1
Mensagens: 49
Registrado em: 03 Mar 2013 17:33
Localização: Aracatuba-SP

Mudar Nome do arquivo a Ser Salvo (HMG)

Mensagem 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
Editado pela última vez por Pablo César em 07 Mar 2013 13:05, em um total de 1 vez.
Razão: Mensagem editada para colocar a tag [ code ]<br>Veja como utilizar esta tag: http://www.pctoledo.com.br/forum/faq.php?mode=bbcode#f2r1
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mudar Nome do arquivo a Ser Salvo (HMG)

Mensagem 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.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
guanabara
Usuário Nível 1
Usuário Nível 1
Mensagens: 49
Registrado em: 03 Mar 2013 17:33
Localização: Aracatuba-SP

Mudar Nome do arquivo a Ser Salvo (HMG)

Mensagem 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.
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mudar Nome do arquivo a Ser Salvo (HMG)

Mensagem 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).
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
guanabara
Usuário Nível 1
Usuário Nível 1
Mensagens: 49
Registrado em: 03 Mar 2013 17:33
Localização: Aracatuba-SP

Mudar Nome do arquivo a Ser Salvo (HMG)

Mensagem 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
Anexos
ImagemErro.jpg
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Mudar Nome do arquivo a Ser Salvo (HMG)

Mensagem 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).
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
guanabara
Usuário Nível 1
Usuário Nível 1
Mensagens: 49
Registrado em: 03 Mar 2013 17:33
Localização: Aracatuba-SP

Mudar Nome do arquivo a Ser Salvo (HMG)

Mensagem 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...
Responder