form de um projeto para outro projeto
Amigos. Dentro de um projeto um dos forms eu preciso utilizar em outro projeto, tudo pelo delphi 7. Exemplo: No projeto do contas a pagar tenho um form que é o cadastro de fornecedores. Agora no outro projeto que estou montando de Estoques, quero utilizar o mesmo form, lembrando que tenho por costume utilizar DM diferenciados para cada módulo, ou seja, o Contas a Pagar utiliza-se de um DM, enquanto o de estoques de outro DM. Como devo fazer para resolver este problemaço dos forms. Obrigado.
Carlos Cabral
Curtidas 0
Respostas
Claudia Nogueira
29/10/2012
Eu trabalho dessa forma, porém tem o mesmo DataModule.
Sempre que for usar os mesmos Forms/Units em projetos diferentes, só pode conter nesses arquivos dependências de outros arquivos que existam em todos os projetos em que eles serão utilizados.
Se você adicionar a pasta que contêm todos os arquivos na library path do Delphi você conseguirá compilar, porém se algum arquivo for Form ou DataModule, o mesmo tem que ser adicionado ao projeto e estar criado no momento do acesso.
Eu não conheço uma forma de você conseguir fazer exatamente como você descreveu.
Sempre que for usar os mesmos Forms/Units em projetos diferentes, só pode conter nesses arquivos dependências de outros arquivos que existam em todos os projetos em que eles serão utilizados.
Se você adicionar a pasta que contêm todos os arquivos na library path do Delphi você conseguirá compilar, porém se algum arquivo for Form ou DataModule, o mesmo tem que ser adicionado ao projeto e estar criado no momento do acesso.
Eu não conheço uma forma de você conseguir fazer exatamente como você descreveu.
GOSTEI 0
Marco Salles
29/10/2012
desculpe mas não entendi .. Não é so com o botão direito no Projeto da um File Open e escolher o Form que se quer importar
e para tirar a depdencia fazer um saveas , salvando no novo diret´rio esta Unidade .
Não seria isto ???
e para tirar a depdencia fazer um saveas , salvando no novo diret´rio esta Unidade .
Não seria isto ???
GOSTEI 0
Claudia Nogueira
29/10/2012
Pelo que eu entendi, ele quer usar o mesmo form nos dois projetos sem alterar nada. Não é importar, é simplesmente adicionar aos projetos.
desculpe mas não entendi .. Não é so com o botão direito no Projeto da um File Open e escolher o Form que se quer importar
e para tirar a depdencia fazer um saveas , salvando no novo diret´rio esta Unidade .
Não seria isto ???
e para tirar a depdencia fazer um saveas , salvando no novo diret´rio esta Unidade .
Não seria isto ???
GOSTEI 0
Marco Salles
29/10/2012
Pelo que eu entendi, ele quer usar o mesmo form nos dois projetos sem alterar nada. Não é importar, é simplesmente adicionar aos projetos.
mas quando vc da um fileOpnen no projeto vc não faz exatamente isto ??? compartilha a mesma Undade entre forms diferentes ?
eu disse dar um saveas para tirar a depedencia , ou seja se salvar um não salva o outro , mas não é necessário caso julgue não ser
[]sds
desculpe mas não entendi .. Não é so com o botão direito no Projeto da um File Open e escolher o Form que se quer importar
e para tirar a depdencia fazer um saveas , salvando no novo diret´rio esta Unidade .
Não seria isto ???
[/quotee para tirar a depdencia fazer um saveas , salvando no novo diret´rio esta Unidade .
Não seria isto ???
mas quando vc da um fileOpnen no projeto vc não faz exatamente isto ??? compartilha a mesma Undade entre forms diferentes ?
eu disse dar um saveas para tirar a depedencia , ou seja se salvar um não salva o outro , mas não é necessário caso julgue não ser
[]sds
GOSTEI 0
Marco Salles
29/10/2012
Pelo que eu entendi, ele quer usar o mesmo form nos dois projetos sem alterar nada. Não é importar, é simplesmente adicionar aos projetos.
mas quando vc da um fileOpnen no projeto vc não faz exatamente isto ??? compartilha a mesma Undade entre forms diferentes ?
eu disse dar um saveas para tirar a depedencia , ou seja se salvar um não salva o outro , mas não é necessário caso julgue não ser
[]sds
desculpe mas não entendi .. Não é so com o botão direito no Projeto da um File Open e escolher o Form que se quer importar
e para tirar a depdencia fazer um saveas , salvando no novo diret´rio esta Unidade .
Não seria isto ???
[/quotee para tirar a depdencia fazer um saveas , salvando no novo diret´rio esta Unidade .
Não seria isto ???
mas quando vc da um fileOpnen no projeto vc não faz exatamente isto ??? compartilha a mesma Undade entre forms diferentes ?
eu disse dar um saveas para tirar a depedencia , ou seja se salvar um não salva o outro , mas não é necessário caso julgue não ser
[]sds
GOSTEI 0
Marco Salles
29/10/2012
Claudia o editor do forum esta meio esquisisto . então subtende-se que estou comentando o seu post e acescento-o abaixo
mas quando vc da um fileOpnen no projeto vc não faz exatamente isto ??? compartilha a mesma Undade entre forms diferentes ?
eu disse dar um saveas para tirar a depedencia , ou seja se salvar um não salva o outro , mas não é necessário caso julgue não ser
[]sds
mas quando vc da um fileOpnen no projeto vc não faz exatamente isto ??? compartilha a mesma Undade entre forms diferentes ?
eu disse dar um saveas para tirar a depedencia , ou seja se salvar um não salva o outro , mas não é necessário caso julgue não ser
[]sds
GOSTEI 0
Claudia Nogueira
29/10/2012
Se ele quiser compartilhar o mesmo form com dois projetos diferentes. O mesmo, ou seja, sem tirar dependências, quando alterar o form, somente abrir os dois projetos e compilar, essa é a forma que eu trabalho e que eu entendi, aí não funcionaria. Mas vamos esperar então ele se manifestar, posso ter entendido errado. :)
Claudia o editor do forum esta meio esquisisto . então subtende-se que estou comentando o seu post e acescento-o abaixo
mas quando vc da um fileOpnen no projeto vc não faz exatamente isto ??? compartilha a mesma Undade entre forms diferentes ?
eu disse dar um saveas para tirar a depedencia , ou seja se salvar um não salva o outro , mas não é necessário caso julgue não ser
[]sds
mas quando vc da um fileOpnen no projeto vc não faz exatamente isto ??? compartilha a mesma Undade entre forms diferentes ?
eu disse dar um saveas para tirar a depedencia , ou seja se salvar um não salva o outro , mas não é necessário caso julgue não ser
[]sds
GOSTEI 0
Marco Salles
29/10/2012
vc disse :
esta é a forma que vc trabalha m que vc entendeu e que não funcionaria ... Não funcionaria porque ?????
Se ele quiser compartilhar o mesmo form com dois projetos diferentes. O mesmo, ou seja, sem tirar dependências, quando alterar o form, somente abrir os dois projetos e compilar, essa é a forma que eu trabalho e que eu entendi, aí não funcionaria
esta é a forma que vc trabalha m que vc entendeu e que não funcionaria ... Não funcionaria porque ?????
GOSTEI 0
Alisson Santos
29/10/2012
A melhor forma de ser feito é como disse, pegar a tela que já tem, colocar no repositório do delphi e utilizar o como inherited o novo formulário.
Essa pratica não é muito comum pois você de certa forma pode em algum momento ter que alterar alguma coisa nessa tela que seja particular apenas para ela, e caso tenha que fazer isso ela vai alterar todas as outras.
Essa pratica não é muito comum pois você de certa forma pode em algum momento ter que alterar alguma coisa nessa tela que seja particular apenas para ela, e caso tenha que fazer isso ela vai alterar todas as outras.
GOSTEI 0
Claudia Nogueira
29/10/2012
Eu tenho uma tela de cadastro de clientes. Essa tela eu uso tanto no retaguarda quando no PDV. Ela tem dependência de um DataModule. Pra eu usar nos dois projetos a mesma tela, ou seja, sempre que eu alterar o form, eu simplesmente recompilar os projetos, para que a alteração feita fique certo em ambos, no meu caso, não sei no dele, nesse form eu tenho dependência de um DataModule, e esse DataModule está adicionado nos dois projetos. Mas como disse, eu entendi que seria dessa forma que ele gostaria de trabalhar, posso estar enganada.
vc disse :
esta é a forma que vc trabalha m que vc entendeu e que não funcionaria ... Não funcionaria porque ?????
Se ele quiser compartilhar o mesmo form com dois projetos diferentes. O mesmo, ou seja, sem tirar dependências, quando alterar o form, somente abrir os dois projetos e compilar, essa é a forma que eu trabalho e que eu entendi, aí não funcionaria
esta é a forma que vc trabalha m que vc entendeu e que não funcionaria ... Não funcionaria porque ?????
GOSTEI 0
Bruno Leandro
29/10/2012
Resumindo,
só é possivel utilizar o mesmo formulario nos dois projetos se as units adicionadas no uses não derem problema, mas como o autor disse ele tem um datamodule diferente em cada projeto, o que nao permitiria utilizar o mesmo formulario nos dois projetos a nao ser que fosse uma copia do mesmo formulario o que geraria manutenção duplicada neste formulario.
uma solução é o formulario nao depender do datamodule, outra seria criar um datamodule geral para todos os projetos e um especifico para cada projeto sendo este formulario depender apenas do formulario geral
só é possivel utilizar o mesmo formulario nos dois projetos se as units adicionadas no uses não derem problema, mas como o autor disse ele tem um datamodule diferente em cada projeto, o que nao permitiria utilizar o mesmo formulario nos dois projetos a nao ser que fosse uma copia do mesmo formulario o que geraria manutenção duplicada neste formulario.
uma solução é o formulario nao depender do datamodule, outra seria criar um datamodule geral para todos os projetos e um especifico para cada projeto sendo este formulario depender apenas do formulario geral
GOSTEI 0
Claudia Nogueira
29/10/2012
Hehehe, isso mesmo que eu estava querendo dizer e não estava conseguindo. Vlw. :)
Resumindo,
só é possivel utilizar o mesmo formulario nos dois projetos se as units adicionadas no uses não derem problema, mas como o autor disse ele tem um datamodule diferente em cada projeto, o que nao permitiria utilizar o mesmo formulario nos dois projetos a nao ser que fosse uma copia do mesmo formulario o que geraria manutenção duplicada neste formulario.
uma solução é o formulario nao depender do datamodule, outra seria criar um datamodule geral para todos os projetos e um especifico para cada projeto sendo este formulario depender apenas do formulario geral
só é possivel utilizar o mesmo formulario nos dois projetos se as units adicionadas no uses não derem problema, mas como o autor disse ele tem um datamodule diferente em cada projeto, o que nao permitiria utilizar o mesmo formulario nos dois projetos a nao ser que fosse uma copia do mesmo formulario o que geraria manutenção duplicada neste formulario.
uma solução é o formulario nao depender do datamodule, outra seria criar um datamodule geral para todos os projetos e um especifico para cada projeto sendo este formulario depender apenas do formulario geral
GOSTEI 0
Carlos Cabral
29/10/2012
Ola Claudinha, Marco e amigos. Agradeço a discussão. E é isso que torna cada vez mais importante este forum. Também agradeço a todos, pois com esse tipo de discussão, percebemos a diferença de alguns profissionais, onde colocam-se como dispostos a trocar informações o que infelizmente não é a realidade do mercado. Hoje eu ainda não tenho potencial para ajudar alguem, mas acredito que em breve, estarei no meio. Bom é o seguinte, vocês estão corretos, realmente quando comecei a migrar meu sistema integrado(hoje um erp completo em cobol), não imaginei a questão do DataModule. E foi exatamente o que fiz, criei para cada módulo, isoladamente. Hoje estou percebendo que poderia ter feito diferente. Alterar todos os módulos nesta altura do campeonato, não compensa. Talvez numa 2ª revisão. Perguntei ao fórum, para ter certeza da burrada que fiz. A ideia era exatamente essa exposta. Tanto o form CLientes como Fornecedores, devem funcionar para sistema de Vendas e Contas a Receber, bem como Estoques e Contas a Pagar, respectivamente, porém não gostaria de duplica-los, imaginei que talvez existisse uma forma de um tipo de uses de um lado para outro. Espero ter explicado a contento para vocês. Agradeço muito meus amigos.
GOSTEI 0
Carlos Cabral
29/10/2012
Claudinha, nesta ultima, achei um negocio interessante em seu comentario. Mas ja informo que se for o que estou pensando, pode dar certo, porém não sei como faze-lo. Imagines um módulo Contas a Pagar, que utilizará o form FOrnecedores, do modo que voce fala, eu deveria então ter um DM identificado como GeralDM por exemplo, onde nele estaria acondicionado CLientes e Fornecedores. O problema é que como eu utilizaria em um projeto, 2 datamodule (ContasaPagarDM e GeralDM) ? No caso de existir, isso daria algum problema em relação aos forms/unit em qual ser chamado ?
GOSTEI 0
Claudia Nogueira
29/10/2012
Você pode ter quantos DataModules forem necessários. Eu tenho vários e deixo eles sendo criados automaticamente. Tenho um GeralDm que é usado em vários projetos. Sempre o mesmo. Eu adiciono o DataModule GeralDm e os Forms de cadastros referenciam ele. Dessa forma que eu trabalho, mas tem várias formas. Tem que ver a melhor pra você.
Claudinha, nesta ultima, achei um negocio interessante em seu comentario. Mas ja informo que se for o que estou pensando, pode dar certo, porém não sei como faze-lo. Imagines um módulo Contas a Pagar, que utilizará o form FOrnecedores, do modo que voce fala, eu deveria então ter um DM identificado como GeralDM por exemplo, onde nele estaria acondicionado CLientes e Fornecedores. O problema é que como eu utilizaria em um projeto, 2 datamodule (ContasaPagarDM e GeralDM) ? No caso de existir, isso daria algum problema em relação aos forms/unit em qual ser chamado ?
GOSTEI 0
Carlos Cabral
29/10/2012
Você pode ter quantos DataModules forem necessários. Eu tenho vários e deixo eles sendo criados automaticamente. Tenho um GeralDm que é usado em vários projetos. Sempre o mesmo. Eu adiciono o DataModule GeralDm e os Forms de cadastros referenciam ele. Dessa forma que eu trabalho, mas tem várias formas. Tem que ver a melhor pra você.
. Claudinha, desta forma então, você abriu meu horizonte. Eu poderia ter um Projeto chamado Cadastros, onde nele estariam Clientes e Fornecedores, e talvez mais alguns, que fossem compartilhados entre módulos. Porém, eu teria que dentro de um projeto colocar o form que estaria em outro projeto, quanto ao DM estaria resolvido. Agora, como no Contas a Pagar, eu agregaria o form Fornecedores, que esta no outro projeto ?
Claudinha, nesta ultima, achei um negocio interessante em seu comentario. Mas ja informo que se for o que estou pensando, pode dar certo, porém não sei como faze-lo. Imagines um módulo Contas a Pagar, que utilizará o form FOrnecedores, do modo que voce fala, eu deveria então ter um DM identificado como GeralDM por exemplo, onde nele estaria acondicionado CLientes e Fornecedores. O problema é que como eu utilizaria em um projeto, 2 datamodule (ContasaPagarDM e GeralDM) ? No caso de existir, isso daria algum problema em relação aos forms/unit em qual ser chamado ?
GOSTEI 0
Claudia Nogueira
29/10/2012
Você teria que adicionar ao projeto tanto o Form pra cadastro de fornecedor, quanto o DataModule que ele é dependente.
GOSTEI 0
Carlos Cabral
29/10/2012
Você teria que adicionar ao projeto tanto o Form pra cadastro de fornecedor, quanto o DataModule que ele é dependente.
Claudinha. Tudo bem ? Fiz os testes e funcionou, e o mais incrível, a manutenção ficou apenas em form. Se vale como experiencia para o trabalho de todos participantes. Meu trabalho esta disposto da seguinte forma, para cada módulo tenho uma pasta especifica onde mantenho todos os forms e o datamodule proprio. Então desta forma dentro de um projeto eu acresci o datamodule de outro projeto adicionando-o e também apontei o form requerido como participante do projeto. No caso o form é o cadastro de fornecedores, que tanto utilizo para o contas a pagar como para o controle de estoques, pode ser utilizado. O que mais me deixou gratificante é que mudei um item só para ver o que acontecia, e na compilação dos dois projetos percebi que tanto para um módulo como para outro o form manteve a alteração realizada, o que me deixou mas satisfeito ainda. Agradeço a voce pela idéia e a todos que fizeram parte. Milhoes de agradecimentos.
GOSTEI 0