Iniciante-Ajuda


#1

Gostaria de saber se existe informaçoes sobre a padronização utilizada pelo adempiere.
Estava olhando o código fonte do adempierelbr, e vi algumas padronizaçoes tanto no código quanto na criação das tabelas. Algumas que achei

AD_ Application dictionary
A_ Asset Management
C_ Core Functionality
GL_ General Leder
I_ Import
K_ Knowledge Base
M_ Material Management
PA_ Performance Analysis
R_ Request
RV_ Report Viewer
S_ Service Management
T_ Temporary
W_ Webstore
X_ Generated Model

Olhei bastante adempiere.com/wiki /(…)

mas não acho informaçoes sobre como mais ou menos o adempiere funciona. A título de aprendizado e futuramente estar alterando a medida q a parametrizaçao nao se adequar as necessidades.

Uma ajuda sobre o que estudar inicialmente ja é uma excelente ajuda.

Desde já agradeço.

Fernando


#2

Fernando,

Sobre o funcionamento da parte técnica/desenvolvimento do ADempiere os fórums e o wiki ainda são a maior fonte de informação.

Conforme surgirem dúvidas sobre como fazer/desenvolver algo, basta “postar” aqui.

Sobre o funcionamento “operacional” do ADempiere, ou seja, como operar o sistema, no wiki existem alguns manuais e o manual disponível na Web Store do Compiere por USD 50,00 é uma excelente referência.

Mas, da mesma forma, conforme forem surgindo dúvidas é só mandar pra gente.

Um abraço,
Eduardo


#3

Entao vamos usar tópico.

Bom, apesar de existirem vários pacotes no projeto, um dos que geralmente é alterado: base. Dentro do subpacote model, encontraramos a classe PO.

Toda operação de salvar registro passa por esta classe?

Se desejamos criar uma classe modelo para uma tabela que acabamos de criar, devemos colocar a expressão “extends PO” na declaração da classe. Dúvida é além dos métodos marcados como abstratos que devem ser implementados. Quais métodos podem (e/ou devem) ser sobrescritos? Vi alguns é : beforeSave, afterSave… :question:

[]s

Fernando :wink:


#4

fernando, o sistema possui uma classe que gera automaticamente as classses X_Tabela e I_Tabela, que possuem todos os métodos descritos por vc.

A classe a ser executada é a GeneretaeModel.

O que ela faz: Verifica no banco de dados as tabelas do Entitytype U e as classes para vc, se vc olhar na classe, vc pode passar como argumento qual o tipo de entidade, ou em qual package vc quer criar as classes.


#5

Fernando,

Dê uma olhada nesta documentação também:

downloads.sourceforge.net/adempi … r=optusnet

Acredito que vai ajudar bastante.

Um abraço,
Eduardo


#6

Para criar uma classe modelo da tabela X_FERNANDO por exemplo, deveria criar duas classes:
X_X_FERNANDO e MFERNANDO

A primeira, filha da classe PO, contém construtores e métodos básicos (gero ela pelo GenerateModel). A segunda, filha da primeira e neta de PO, contém métodos importantes como BeforeSave e AfterSave, tem alguma classe q também gera essa classe? (sobre esses e outros métodos queria saber algo + ou algum link sobre). Pq esses métodos são métodos sobreescritos da classe PO e podem ser usados para validações e tarefas automatizadas.

Interessante a ideia do GenerateModel, só esse artigo do wiki que contém algumas explicações do GenerateModel.
Gostaria de saber se para formularios, callout, validações - já li sobre padronizações no código, modo de citar elas no adempiere entre outras coisas - mas existe alguma classe de “geração” de algum modelo para apenas modificar a lógica , semelhante a GenerateModel?

[]s

Fernando