Gente tenho 3 tabelas "peca",  "operacao" e "apontamento":<div><br></div><div><div>CREATE TABLE peca (</div><div>pec_id SERIAL,</div><div>pec_cli_id INT NOT NULL,</div><div>pec_codigo VARCHAR(30) NOT NULL,</div>
<div>pec_denominacao VARCHAR(60) NULL,</div><div>PRIMARY KEY(pec_id)</div><div>);</div><div><br></div><div><div>CREATE TABLE operacao (</div><div>ope_id SERIAL,</div><div>ope_pec_id INT NOT NULL,</div><div>ope_maq_id INT NOT NULL,</div>
<div>ope_numero VARCHAR(3) NOT NULL,</div><div>ope_descricao VARCHAR(80) NOT NULL,</div><div>ope_denominacao VARCHAR(100) NOT NULL,</div><div>PRIMARY KEY(ope_id)</div><div>);</div></div><div><br></div><div><div>CREATE TABLE apontamento (</div>
<div>apo_id SERIAL,</div><div>apo_ser_id INT NOT NULL,</div><div>apo_fun_id INT NOT NULL,</div><div>apo_ope_id INT NOT NULL,</div><div>apo_uni_id INT NOT NULL,</div><div>apo_oco_id INT NOT NULL,</div><div>apo_quantidade INT NULL,</div>
<div>apo_refugada INT NULL,</div><div>apo_data_inicial DATE NOT NULL,</div><div>apo_data_final DATE NULL,</div><div>apo_hora_inicial TIME NOT NULL,</div><div>apo_hora_final TIME NULL,</div><div>apo_status INT NOT NULL,</div>
<div>apo_obs TEXT NULL,</div><div>PRIMARY KEY(apo_id)</div><div>);</div></div><div><br></div><div>Relacionamentos</div></div><div>tabela peca has_many operacao</div><div>tebela operacao has_many apontamento</div><div><br>
</div><div>a tabela peca contem o id do cliente e dados da peça</div><div>a tabela operacao contem as operacoes para fabricar a peca e cada operacao contem um numero, normalmente: operacao 1: 10, operacao 2: 20, operacao 3: 35</div>
<div>a quantidade de operacao varia de peça para peça e os numeros tambem varia de peça para peça.</div><div>a tabela apontamento é como se fosse um relatório de produção de cada funcionario com data inicial e final, hora inicial e final e quantidade que produziu.</div>
<div><br></div><div>agora eu vou explicar o que eu quero, cada operacao depende da operacao anterior para produzir, então eu gostaria de pegar pegar a quantidade produzida da operacao anterior para colocar de saldo na operacao que vai ser iniciada. Com ajuda no irc eu cheguei a esse código:</div>
<div><br></div><div><div>return $valor->resultset('Operacao')->search(</div><div>        {</div><div>            ope_numero => {'<' => $numero},</div><div>            'apontamento.apo_ser_id' => $id</div>
<div>        },</div><div>        {</div><div>            join => 'apontamento',</div><div>            rows => 1,</div><div>            group_by => 'ope_numero',</div><div>        }</div><div>    )->get_column('apontamento.apo_refugada')->sum;</div>
</div><div><br></div><div>esse código acima funciona em partes, só funciona quando só tem uma operação anterior, quando tem mais de 2 operacao anterior, ele esta retornando a que é verdadeira.</div><div><br></div><div>espero que tenham entendido.</div>
<div><br></div><div>Obrigado.</div><div><br></div><div><br></div><div><br></div><div><br></div>