[Resolvido]Condição para editar

Boa Tarde,

Pessoal, alguém sabe de alguma forma para não permitir a edição do registro.

Exemplo tenho um contas a pagar, mas não quero que seja editável se já quitado.

Até tentei no onrecord, mas to apanhando.

Abraços.

Claudney

tire a ligação de aplicação e crie um campo virtual com uma imagem e na onrecord vc exibe a imagem somente quando o registro tiver permissão.

use sc_link.

[size=2]Ola[/size]

[size=2]Eu uso para isso a macro [font=Arial]sc_apl_conf(“Aplicação”, “Propriedade”, “Valor”)[/font][/size]
[font=Arial][/font]
[font=Arial][size=2]lig_edit[/size][size=2]on/off[/size][size=2]Habilita (on) ou desabilita (off) o botão de edição do registro (lapis)[/size][/font]

on onload se tiver quitado esconde o botão de salvar

Ola, muito obrigado pessoal.

Testei as formas sugeridas, bem pensando mesmo, só que eu tava pensando diferente, tipo

if({Saldo} = 0){
sc_field_readonly({Fornecedor},On);
sc_field_readonly({Emissao},On);
sc_field_readonly({Vencimento},On);
{
else{
sc_field_readonly({Fornecedor},Off);
sc_field_readonly({Emissao},Off);
sc_field_readonly({Vencimento},Off);
}

Mas não esta funcionando no onrecord.

Ainda nada.

Gente ta quase, no load do formulário inclui, porém ao incluir o saldo ta zero da errado,

Qual macro para saber se esta incluindo ?

IF({Saldo} == 0){
sc_field_readonly({Fornecedor},on);
sc_field_readonly({Documento},on);
sc_field_readonly({Parcela},on);
sc_field_readonly({Descricao},on);
sc_field_readonly({Emissao},on);
sc_field_readonly({Vencimento},on);
sc_field_readonly({Original},on);
sc_field_readonly({Despesas},on);
sc_field_readonly({Descontos},on);
sc_field_readonly({Juros},on);
sc_field_readonly({Tipo_Despesa},on);
sc_field_readonly({Plano_Contas},on);
sc_field_readonly({Centro_Custo},on);
sc_field_readonly({Codigo_barras},on);
sc_field_readonly({Observacao},on);
sc_field_readonly({Ativo},on);
}

Mais uma vez muito obrigado.

No meu caso Eu uso um campo na tabela. Por exemplo: Status - AB - Aberto / LP->Liquidado Parcial / LQ -> Liquidado

No Formulário no evento OnLoad, Eu coloco o código abaixo:

if({status}==‘LQ’)
{
echo "";

sc_redir(‘cns_pagamentos.php’);
}

Fica bom tb, mas no meu caso como é um CP quero deixar o usuário ver o registro. mas não edita-lo.

Obrigado pela dica.

Claudney

Saudações como não achei a macro que diz que esta incluindo ou editando, então comparei com a PK que somente é alimentada ao incluir o registro.

IF({Saldo} == 0 and {codigo} <> ‘’)

Valeu senhores.

Claudney

BOTÃO (BOTÕES)
Botões:
sc_btn_copy - Esta macro retorna “true” quando o botão “Copiar” é selecionado em um formulário.
sc_btn_delete - Esta macro retorna “true” quando o botão “Excluir” é selecionado em um formulário.
sc_btn_display (“Nome_Botao”, “on/off”) - Esta macro torna visível, ou não, um botão da barra de
ferramentas em tempo de execução da aplicação.
sc_btn_new - Esta macro retorna “true” quando o botão “Novo” é selecionado em um formulário.
sc_btn_insert - Esta macro retorna “true” quando o botão “Inserir” é selecionado em um formulário.
sc_btn_update - Esta macro retorna “true” quando o botão “Alterar” é selecionado em um formulário.

Exemplo:
if (sc_btn_new) {
// Botão NOVO foi ativado, Digitação de novo registro em Andamento.
}

DESATIVAR Botões (Evento OnLoad > All):
sc_btn_display(‘delete’, ‘off’);
sc_btn_display(‘update’, ‘off’);
sc_btn_display(‘new’, ‘off’);

// VERIFICAR SE CAMPO FOI ALTERADO DURANTE USO DO FORMULÁRIO:
sc_changed Verifica se algum campo foi alterado/mudado após o último OnLoad.

// Se quiser usar no Evento onAfterUpdate, use uma global no OnBeforeUpdate.

No OnLoad:
[glo_Recarregar]=‘NAO’; // Variável de Saída.

No Evento OnBeforeUpdate:
if (sc_changed({Nome_Campo})) {
Echo “O campo foi modificado”;
[glo_Recarregar]=‘SIM’;
}

No Evento OnAfterUpdate:
if ([glo_Recarregar]==‘SIM’) {
sc_commit_trans();
sc_redir(form_venda_produto.php, idvenda = 0, “_self”);
}

http://www.scriptcase.com.br/docs/pt_br/v9/manual/14-macros/01-visao-geral/

Nossa Jailton muito obrigado.

Claudney