Ir ao conteúdo
  • Cadastre-se

Gerador de documentos de texto


caiocaesar

Posts recomendados

Prezados,

Estou querendo desenvolver um aplicativo simples, que consiste em um gerador de documentos de texto, a partir da entrada de dados pelo usuário.

A ideia do algoritmo é esta:

Leia Nome;

Leia Sexo;

Leia Idade;

Se Sexo = 'Masculino' então

Escreva 'O'

Senão

Escreva 'A';

Escreva Nome;

Escreva ' tem ';

Escreva Idade;

Escreva ' anos.'

(Não sei se consegui expor corretamente o algoritmo, caso não esteja correta a escrita, por favor me avisem, para que eu possa tentar explicar melhor o que estou querendo).

Certamente o aplicativo, embora simples, será mais complexo que o exemplo, imagino que cada texto gerado terá em torno de 40 variáveis.

Não sou programador, embora tenha estudado sobre o assunto no passado, mas estou disposto a me dedicar para desenvolver este aplicativo.

No momento estou utilizando um livro de Delphi, pois conheço um pouco de Pascal, o que iria me ajudar, mas não sei se é exatamente a melhor escolha.

A dúvida é: qual linguagem vocês recomendam para este uso específico?

Outro ponto: eu consigo imaginar que este gerador de texto possa criar um arquivo .txt sem maiores problemas. Porém, seria desejável que ele já criasse um arquivo .odt, para o BrOffice, com toda a formatação pronta. Alguém sabe dizer se é possível/simples fazer isso?

Att,

Caio

Link para o comentário
Compartilhar em outros sites

Robson,

Obrigado pela ajuda.

Passei a tarde quebrando a cabeça pra conseguir passar essa lógica pro Lazarus, com bastante dificuldade no começo, pra me adaptar a certas particularidades que não exisitiam no "Turbo Pascal", mas acabou que saiu:


procedure TFormPrincipal.ButtonGerarClick(Sender: TObject);
begin
Sexo:=EditSexo.Text;
if (Sexo = 'M') or (Sexo = 'm') then
begin
Texto:='O '+EditNome.Text + ' tem ' + EditIdade.Text + ' anos.';
Showmessage(Texto);
end
else
if (Sexo = 'F') or (Sexo = 'f') then
begin
Texto:='A '+EditNome.Text + ' tem ' + EditIdade.Text + ' anos.';
Showmessage(Texto);
end
else
Showmessage('Erro no campo Sexo!');
end;

Meu próximo passo agora é gerar um arquivo .txt com a variável Texto. Alguém pode dar uma luz?

Quanto ao uso de DLL para essa relação do aplicativo com o Office ou com o BrOffice, alguém já fez algo do tipo?

Link para o comentário
Compartilhar em outros sites

Bom, se voce quiser que o documento ja seja em ODT ou DOCX (office) então não faz sentido programar em outra linguagem, aliás nem programar vai ser preciso, pois voce poderá usar a mala direta, mas se for por programacao então voce tera que utilizar o basic do broffice ou o VBA do ms office.

Agora para TXT simples voce pode usar qualquer linguagem.

Link para o comentário
Compartilhar em outros sites

voce precisa desse programa (está fazendo um trabalho para faculdade, está treinando programação, etc) ou voce precisa na prática apenas de gerar documentos com campos? Se for a 2ª opção é bem mais simples e prático.

O Office é mais robusto, mas dá pra fazer também por broffice.

Link para o comentário
Compartilhar em outros sites

Preciso para gerar um documento com campos mesmo.

Eu só conhecia essa função de mala direta do office de nome, nunca utilizei, vou dar uma analisada pra ver se é possível. Acredito que se torne um pouco difícil construir a estrutura condicional da maneira que preciso utilizando apenas a mala direta (como disse, imagino que o texto conte com umas 40 variáveis, e ainda tem que considerar que certos parágrafos são inseridos ou não de acordo com os dados inseridos, além da concordância gramatical entre os termos), mas vou tentar.

Obrigado pela ajuda!

Link para o comentário
Compartilhar em outros sites

No MS Office Word existem campos condicionais onde dá pra fazer uma programação básica.

Primeiro de tudo, crie uma planilha exel com a 1a linha contendo o nome dos campos nas colunas A, B, ..... Exemplo: NOME, IDADE, SEXO, aí a partir da linha 2 você vai preenchendo com as pessoas.

Abre o word, vai na aba correspondencias, clica em selecionar destinatarios, clica em usar lista existente, procure a planilha excel que criou.

Agora é so preencher o texto da sua carta, quando chegar no ponto onde deve entrar os dados personalizados você clica em Inserir campo de mesclagem.

SE o texto for condicional, por exemplo "O" para masc e "A" para feminino, é so você ir em "REgras" e selecionar Se...então...senão...

terminado isso é só ir em concluir e mesclar

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...