[Resolvido] Campos obrigatórios


#1

Bom dia.
Recebi aqui na empresa, a solicitação de tornar obrigatórios, os campos de endereço do Parceiro de Negócios (tabela C_Location, onde fica o endereço, ligada a C_BPartnerLocation).
Só que não adianta colocar os campos (Address1, Address2…etc) como obrigatórios, porque quando abre aquela janelinha, eles não estão como obrigatórios.
E seria necessário que fossem, porque as vezes o cadastro do endereço fica incompleto, e quando vai ser emitida Nota Fiscal, dá erros.

Alguém já fez esta alteração?

Desde já agradeço. 8)


#2

vc precisa alterar o código da VLocationDialog…

ex. para vc colocar no jbInit()

fAddress1.setMandatory(new MColumn(Env.getCtx(),MColumn.getColumn_ID("C_Location", "Address1"),null).isMandatory());
fAddress2.setMandatory(new MColumn(Env.getCtx(),MColumn.getColumn_ID("C_Location", "Address2"),null).isMandatory());
fAddress3.setMandatory(new MColumn(Env.getCtx(),MColumn.getColumn_ID("C_Location", "Address3"),null).isMandatory());
fAddress4.setMandatory(new MColumn(Env.getCtx(),MColumn.getColumn_ID("C_Location", "Address4"),null).isMandatory());

e vc precisa também fazer também uma verificação no actionPerformed(),

public void actionPerformed(ActionEvent e) { if (e.getActionCommand().equals(ConfirmPanel.A_OK)) { if (!validacao){ //COLOCAR AQUI ALGUMA VALIDAÇAO SE OS CAMPOS ESTAO VAZIOS E RETORNAR CASO ALGUM PROBLEMA, PARA NAO FAZER A INCLUSAO NO BD return; } action_OK(); m_change = true; dispose(); }

Depois coloque aqui o seu código, que eu faço o commit no adempierelbr e deixo os devidos créditos a vc Cátia. 8)


#3

Boa tarde.
Obrigada pela ajuda.
Fiz as alterações.
Vou anexar o arquivo java alterado.

As alterações estão nas linhas 189 a 192, e 371 a 385.

Só para constar, aqui na empresa usamos a versão 342 do AD LBR.

Atenciosamente, Catia.
:wink:


#4

legal Cátia, fiz o commit no trunk do adempierelbr e coloquei os créditos para vc :smiley:


#5

Ah, e outra consideração: para os campos ficarem obrigatórios, tem que marcar a flag la ta tabela C_Location.
No meu caso, usei nos campos Address1,2 e 3, e Postal.
Ai marquei como obrigatório o C_City_ID e o C_Region_ID, que por sua vez não deixa nenhum campo em branco no combo box.

Acho que seria isso.

Att.
Cátia