[Resolvido] Gravar Linha Automaticamente

Ficou assim…

sc_lookup(ultimo_nro, "
SELECT
MAX(Item)+1
FROM
oslojadetalhe
WHERE
id_os={id_os}
ORDER BY
id_os
");

{Item}={ultimo_nro[0][0]};

if (empty({Item})) {
{Item}=1;
}

Testa ele no OnLoadRecord:

echo 'SQL = '."
SELECT
MAX(Item)+1
FROM
oslojadetalhe
WHERE
id_os={id_os}
ORDER BY
id_os
“.”
";

sc_lookup(ultimo_nro, "
SELECT
MAX(Item)+1
FROM
oslojadetalhe
WHERE
id_os={id_os}
ORDER BY
id_os
");

{Item}={ultimo_nro[0][0]};

if (empty({Item})) {
{Item}=1;
}

echo 'ITEM = '.{Item}."
";

Ai agora é só corrigir que vai dar certo.

Infelizmente ainda nada, nem o echo respondeu, e nem erros também.

Agora é a parte do debug mesmo, tente passar a global como eu já tinha dado o exemplo e chamar esse detalhe diretamente,
para você ir fazendo o debug e achar a parte do código que não esta retornando, ai só corrigir que vai dar certo.

Crie uma cópia esta app detalhe tipo bkp_nome_dela para poder fazer o debug direto na original até encontrar o erro,
depois corrige na bkp_ e volta ela como original.

Grande Willian e Jailton.
Muito obrigado por compartilharem acredito que isso seja muito útil a todos.

1)Olhei pelo Debug e encontrei um erro no pai o campo é id e no filho o campo é id_os, fiz as correções;
2)No filho fiz um evento ajax onFocus no último campo ‘obs_produto’(que é um campo texto), chamando o o procedimento php UltimoItem();

Quanto eu insiro um ítem no filho, ao passar pelo campo ‘obs_produto’ carrega o ajax, mas não inseri a próxima linha, e quanto eu tento salvar a linha pelo botão do scriptcase, aparece um erro provindo da procedure:

Erro ao acessar o banco de dados
Incorrect number of arguments for PROCEDURE propague_multfoto.ajustar_oslojadetalhe; expected 1, got 0

View SQL

call ajustar_oslojadetalhe( )

Close

Joelton Silva te enviei uma MP, para o Debug.

Valew amigo!

Hola William
Buenas Tardes

He probado tu codigo con scriptcase 9 y funciona bien podrias indicar como se podria adaptar para que tambien grabe las modificaciones porque cuando el registro es nuevo graba y crea la nueva linea sin embargo cuando el registro ya existe agrega ademas otra linea y asi por cada vez que se modifica la linea.

si el registro existe solo deberia grabar y no generar una nueva linea como se podria hacer eso muchas gracias por tus aportes