Sou novata no sugarCRM,
Alguém poderia me dizer onde é inserido a parte da programação e como posso setar um campo como auto-increment dentro do construtor de modulos?
obrigada.
Sou novata no sugarCRM,
Alguém poderia me dizer onde é inserido a parte da programação e como posso setar um campo como auto-increment dentro do construtor de modulos?
obrigada.
A programação no sugarcrm pode ser realizada de diversas maneiras como através logic_hooks, campos computados, ou ainda através da importação de arquivos java script.
Se o seu objetivo é criar um campo de auto incremento, existe uma forma simples de fazer isto que não exige programação.
Após logar como administrador, entre na área de administração, e então vá em studio.
Lá selecione o módulo, e nele solicite a criação de um novo campo.
No formulário de criação do campo, existe um tipo dedicado para auto incremento, e você pode inclusíve configurar alguns parâmetros de numeração.
Rafael Queiroz Gonçalves
Advanced OMG UML Certified Professional
Sun Certified Enterprise Architect for the Java Platform
Sun Certified Programmer for the Java 2 Platform
IBM Certified Advanced Application Developer - Lotus Notes and Domino
IBM Certified Application Developer - IBM WebSphere Portlet Factory
Computer Science Mastering / UFSC - PPGCC
Olá Rafael,
Obrigada pela sua resposta.
Fiz exatamente o que você me indicou, ao criar um novo campo, seleciono o tipo de dado disponível em um drop-down (minhas opções são: PDF for sugar button, Endereço, Caixa de seleção, Moeda, Data, Data/hora,Decimal, Drop Down, Decimal, HTML, IFrame, Imagem, Numero Inteiro, Multi-Seleção, Relação flexivel, Telefone, Radio, RElacionar, Area de texto, Link, Campo de texto).
Deveria ter um item de nome Auto-increment nesta lista ou ao menos um campo como um checkbox com a opção de auto-increment.
Você sabe me dizer se é a versão para browser que estou usado que tem essa diferença ou terei que baixar e instalar em minha maquina?
A versão que estou utilizando é 6.2.0 (build 6354)
Obrigada novamente.![]()
Olá Leticia,
O tipo de campo que você deve criar é inteiro.
Os campos de um módulo normalmente são definidos dentro do arquivo /modules/module_name/vardefs.php.
Após criar o campo pelo studio, encontre seu array de definições no arquivo vardefs.php, e adicione o seguinte atributo: 'auto_increment' => true. Como:
PHP Code:'field_name' =>
array (
'name' => 'field_name',
'vname' => 'LBL_FIELD',
'type' => 'int',
'auto_increment'=>true,
)
Rafael Queiroz Gonçalves
Advanced OMG UML Certified Professional
Sun Certified Enterprise Architect for the Java Platform
Sun Certified Programmer for the Java 2 Platform
IBM Certified Advanced Application Developer - Lotus Notes and Domino
IBM Certified Application Developer - IBM WebSphere Portlet Factory
Computer Science Mastering / UFSC - PPGCC
Oi Rafael,
muito obrigada pela ajuda... vou fazer isso.
Grande abraço.![]()
Boa tarde,
Eu fiz o que o Rafael pediu no post anterior.
Criei o campo com tipo inteiro e depois setei no vardef.php o ' auto_increment' => true.
Mas mesmo assim não funcionou. Precisa dar um implement ou ate mesmo publicar e depois instalar o módulo, para poder funcionar?
Aguardo reposta.
![]()
Após alterar o vardefs é necessário executar o repair/rebuild através da área administrativa. Também é necessário executar os scripts de sincronização com o banco de dados se o repair/rebuild solicitar.
Desta forma você provavelmente deve conseguir um resultado positivo.
Rafael Queiroz Gonçalves
Advanced OMG UML Certified Professional
Sun Certified Enterprise Architect for the Java Platform
Sun Certified Programmer for the Java 2 Platform
IBM Certified Advanced Application Developer - Lotus Notes and Domino
IBM Certified Application Developer - IBM WebSphere Portlet Factory
Computer Science Mastering / UFSC - PPGCC
Olá,
Novamente, fiz todos os passos recomendados no post anterior:
- após alterar os vardefs, apliquei o repair/rebuild.
obs: a opção modo de desenvolvedor está ativado.
porém, não obtive resultado positivo.
Duvidas: o campo de id, por exemplo id_uf, aceita underline?
como eu sei que o banco de dados está conectado ao sugarCRM? Utilizamos o Mysql e PHPMyAdmin as tabelas estão certas e os campos id setados como auto_increment. Utilizo o Xampp com o Apache e o Mysql ativados.
Em que lugar o sugarCRM mostra que o banco de dados está conectado?
Desculpe fazer tantas perguntas, mas parece que todas as pessoas que perguntam sobre como criar o campo id com auto_increment não estão conseguindo resolver o problema. Seria mais facil o proprio SugarCRM ter a opção auto_increment ao criar um campo id. (exemplo: um checkbox com a opção auto_increment).
Agradeço de antemão a atenção recebida.
Abraços.![]()
Last edited by leticiah; 2011-09-27 at 12:36 PM. Reason: errata: não é mysqladmin e sim phpmyadmin
Olá Letícia,
Para saber se o banco de dados esta conectado com o sugar, basta verificar o arquivo config.php no diretório raiz do sugar. Lá as variáveis referentes ao ip/nome/login/senha do servidor do banco de dados são atribuídas. Pelo simples fato da sua aplicação estar funcionando, significa que o banco de dados informado no config.php está conectado.
Para ter certeza que o banco de dados está sincronizado com o sugar CRM, o repair/rebuild é a melhor solução, pois ele faz está verificação e sincroniza as diferenças.
Em relação ao problema em criar o campo com auto_increment, talvez você consiga algumas informações adicionais nesta thread http://www.sugarcrm.com/forums/f6/au...80/index2.html.
Uma alternativa para ter este campo auto-increment, é você programá-lo, isto significa que no evento before_save, você deverá programar sua lógica de numeração. Um exemplo desta solução está na thread mencionada.
Rafael Queiroz Gonçalves
Advanced OMG UML Certified Professional
Sun Certified Enterprise Architect for the Java Platform
Sun Certified Programmer for the Java 2 Platform
IBM Certified Advanced Application Developer - Lotus Notes and Domino
IBM Certified Application Developer - IBM WebSphere Portlet Factory
Computer Science Mastering / UFSC - PPGCC
Olá Rafael,
Obrigada pela resposta, estou analisando e tentando implementar, ao que tudo indica deve tar faltando mesmo o logic_hook, o exemplo que você me passou me trouxe dúvidas:
- Qual seria o bloco de codigo que é default no logic_hook para que depois eu possa implementar minha logica de numeração? (pq grande maioria das classes tem um padrão de codigo q tem de existir nele e o bloco que cada um implementa por conta). Existe algum passo a passo para criar um logic_hook default?
Se você encontrar algum thread que fale só sobre logic_hook, desde conceitos até como implementa-los, por favor, me envia. Pelo exemplo do thread anterior eu pude ter uma ideia, mas ainda está confuso para entender ao certo como um logic_hook funciona dentro do sugar.
There are currently 1 users browsing this thread. (0 members and 1 guests)
Bookmarks