Formulario detalhe náo traz itens quando carrega o master

Pessoal, tenho m formulário de pedidos bem simples.

Porem quando abro um pedido ele traz o formulário de detalhe como se não houvessem dados cadastrados,
mas ai se troco o numero de registros por paginas ele carrega os registros do formulário detalhe, alguém sabe o q pode ser?

Outra coisa fiz esse codigo para atualizar o master porém nao esta gravando as informações no master

$Sql = “SELECT sum(QTN * VLR_UNT), sum(VLR_DESC), sum(VLR_LIQUID) FROM scped002
where CODIGO = {CODIGO}”;
sc_lookup(data,$Sql);
if(!empty({data})){
$Total = {data[0][0]};
$Desconto = {data[0][1]};
$Liquido = {data[0][2]};
}
else {
$Total = 0;
$Desconto = 0;
$Liquido = 0;
}
$Sql = “Select count(PRODUTO) FROM scped002 where CODIGO = {CODIGO}”;
sc_lookup(data,$Sql);
if(!empty({data})){
$QtnItens = {data[0][0]};
}
else {
$QtnItens = 0;
}
sc_format_num($Total, ‘.’, ‘,’, 2, ‘S’, ‘1’, ‘’);
sc_format_num($Desconto, ‘.’, ‘,’, 2, ‘S’, ‘1’, ‘’);
sc_format_num($Liquido, ‘.’, ‘,’, 2, ‘S’, ‘1’, ‘’);
sc_master_value(‘QTN_ITENS’, $QtnItens);
sc_master_value(‘VLR_DESC’, $Desconto);
sc_master_value(‘VLR_TOTAL’, $Total);
sc_master_value(‘VLR_LIQUID’, $Liquido);

colocou em modo debug a aplicação detalhe?

Haroldo,
no momento que eu carrego o formulario contemdo o master e o detalhe o debug traz a seguinte consulta
“SELECT count(*) from scped002 where EMPRESA = 1 AND CODIGO = 1”

E quando eu troco o combo visualizar ele traz o correto:
SELECT RECNUM, EMPRESA, CODIGO, PRODUTO, QTN, VLR_UNT, PORC_DESC, VLR_DESC, VLR_LIQUID from scped002 where EMPRESA = 1 AND CODIGO = 1 order by RECNUM LIMIT 0,10

Onde eu posso corrigir essa linha??

O SC é que gera os sqls de formulários, você não tem acesso.

Certo Haroldo mas como faço para corrigir minha aplicação?

refaça o detalhe. Exclua e refaça identificando corretamente a coluna no detalhe que representa o id no formulário mestre.

Funcionou Haroldo refiz o detalhe mas somente liguei pelo campo Codigo…
para usar chave composta (Empresa, codigo) o scriptcase acetaria???

Obrigado!

Mas para qual situação necessitaria de ambos? Digo isto porque poderá ser realizado um tratamento no sql antes ou depois…

Ideal é sempre ter um id auto incremento como pk e usar esse como ligação entre tabelas, mas o SC acredito que aceita sim.

A minha ideia è usar Empresa+Codigo para por exemplo a empresa 1 ter o cliente 1, 2 ,3 a empresa 2 tbm poder ter o cliente 1,2,3… Facilitando o usuario

Entendo. Isso não impede de ter campos ids (PK) nas tabelas. Em boas práticas de modelagem, nesse caso uma tabela de ligação é criada : Emp_X_Cli (Id_empresa, id_cliente) como ligação.

http://sis4.com/brModelo/
http://sis4.com/brModelo/monografia/monografia.htm