Olá!
tenho um form que possui 128 campos. Cada campo esta representado da seguinte maneira:
g01030507 , onde g identifica que o campo é de u grupo, o valor 01 identifica o codigo do grupo1, o valor 03 identifica o codigo do grupo2, o valor 05 identifica o codigo do grupo3 e o valor 07 identifica o codigo do grupo4.
O valor pego no campo g01030507 é a quantidade desejada deste produto. Eu preciso dar um select no banco e setar os 128 campos com as respectivas quantidades.
Na tabela do banco eu tenho apenas cd_grupo_1,cd_grupo_2,cd_grupo_3, cd_grupo_4 e qt_solicitada.
O código que escrevi é o seguinte:
dbobj.table.Tb_lista_grupo table2 = new dbobj.table.Tb_lista_grupo();
String[][] select2 = null;
String[] order2 = null;
String[] groupby2 = null;
String[] having2 = null;
Object[][] where2 = { {“Nu_lista”,"=", java.util.text.FormatNumber.toInt(f.getNu_lista())}, {“Nu_ano”,"=", java,util.text.FormatNumber.toInt(f.getNu_ano())}, }
Vector res_Tb_lista2 = j.select(table2, select2, where2, groupby2, having2, order2);
if (res_Tb_lista2 != null && res_Tb_lista2.size() > 0)
{
String campo = “”;
int tamanho = (int)res_tb_lista2.size();
for(i=1;i<=tamanho;i++)
{
dbobj.table.Tb_lista_grupo r = (dbobj.table.Tb_lista_grupo) res_Tb_lista2.elementAt(i);
campo = "f.setG"+com.egen.util.text.FormatNumber.fillMode(r.getCd_grupo_1(), "00")+com.egen.util.text.FormatNumber.fillMode(r.getCd_grupo_2(), "00")+com.egen.util.text.FormatNumber.fillMode(r.getCd_grupo_3(), "00")+com.egen.util.text.FormatNumber.fillMode(r.getCd_grupo_4(), "00")+"";
// parei aqui... não consigo pensar numa maneira de pegar a variavel campo que deve conter todos os f.set's (todos os 128 campos) para tentar montar um comando como o colocado abaixo:
f.setG01030507(r.getQt_solicitada());
o problema que o q vem depois do G varia e não posso somar ao f.set que o compilador não entende. Não posso colocar por exemplo f.setG+""+campo(r.getQt_solicitada()); mesmo tirando o f.setG da variavel campo.
Enfim fico muito grato se alguém me ajudar a montar um codigo em que eu consiga setar todas as 128 quantidades solicitadas nos seus respectivos campos.
Valeu,
Luiz Fernando Martinez