No Insert com botão Run não trás informação de um campo

Olá,

Com o botão Run quero atualizar outras tabelas, falta a informação do Parceiro - tentei de várias formas e não mostra o valor na tabela de movimentação.

Criei um campo virtual, é mostrado na grid porém não é atualizado em outra tabela.

Criei método PHP e no Evento OnRecord (ou seria outro?) não vai também.

Atenção
Undefined property: lanctos_grid_pagar_apl::$nome

Atenção
Undefined property: lanctos_grid_pagar_apl::$nome_parc

Atenção
Undefined property: lanctos_grid_pagar_apl::$nome_parceiro

editar 73 3 2019-07-28 6525.00 12586 120 7 Pagto do valor doc. num. 12586 de . 2 1

Onde está o detalhe?

Agradeço desde já.

Exemplo passo a passo do botão RUN:

BOTÃO RUN - PROCESSAR CONSULTA

Primeiro na Consulta em Eventos (OnScriptInit) colocar:
// BOTÃO RUN
[x] = 0;
[registro_selecionados] = array();

Criar um BOTÃO na consulta selecionar tipo = RUN

Dentro do BOTÃO no EVENTO (OnRecord) Colocar:
$arr=[x];
[registro_selecionados][$arr]={rc.ReceberID}; // Campo da Grid
[x]++;

Dentro do BOTÃO no EVENTO (OnFinish) Colocar:
$qtde_registros=count([registro_selecionados]);

for ($_x=0; $_x<$qtde_registros; $_x++) {

$_ReceberID = [registro_selecionados][$_x];

// Marcar o Registro

$sql ="
	UPDATE 
		pedidos_receber
	SET
		DataRecebimento = '[glo_DataBaixa]',
		ValorRecebimento = ValorVencimento,
		RecebimentoForma = '[glo_RecebimentoForma]',
		BaixadoPor = '[usr_login]'			
	WHERE
		ReceberID = $_ReceberID
"; 

sc_exec_sql($sql);	

} // Final for $_x

sc_commit_trans();

1 Curtida

Olá Jailton,

Obrigado pela instrução para o botão run, gera todos os update’s e insert’s nas tabelas porém a informação no nome do parceiro nada. Ocorreu o mesmo erro ao final -

Atenção
Undefined property: lanctos_grid_pagar_apl::$nome_parceiro

Realmente esta com bug, ele não esta pegando os campos virtuais, enviar o erro para: bugs@netmake.com.br e contonar com sc_lookup, até arrumarem.

Exemplo no Botão Evento (OnFinish) Pegar campos extras com a macro sc_lookup:
Dentro do BOTÃO no EVENTO (OnFinish) Colocar:

$qtde_registros=count([registro_selecionados]);

for ($_x=0; $_x<$qtde_registros; $_x++) { 

	$_ReceberID = [registro_selecionados][$_x];
	
	/* Macro sc_lookup */

	$sql ="
	SELECT
		Nome_Parceiro,
		CPF
	FROM
		pedido
	WHERE
	    PedidoID = $_ReceberID
	";

	sc_lookup(chk_ped, $sql);

	/* Erro no lookup */
	if (FALSE === {chk_ped}) {
		sc_error_message("Ocorreu um erro no acesso ao banco de dados.<BR>");
	}
	elseif (empty({chk_ped})) { /* EOF */

		// sc_error_message("Nenhum valor foi retornado pelo banco.<BR>");
		
	}
	else {

		/* Inclua aqui sua rotina de processamento */

		$_Nome_Parceiro = {chk_ped[0][0]};
		$_CPF = {chk_ped[0][1]};		
		
	}
	
	
	// Marcar o Registro
	
	$sql ="
		UPDATE 
			pedidos_receber
		SET
			Nome_Parceiro = '$_Nome_Parceiro',
			CPF = '$_CPF'
		WHERE
			ReceberID = $_ReceberID
	"; 
	
	sc_exec_sql($sql);	

} // Final for $_x

sc_commit_trans();

Olá Jailton,

Já tinha um botão Run em outra aplicação e só repliquei.

OnRecordP

Realmente esta com bug, ele não esta pegando os campos virtuais, enviar o erro para: bugs@netmake.com.br e contonar com sc_lookup, até arrumarem.

Fiz o lookup para buscar o nome com um atributo e também não trouxe.

Alterei entre colchetes:

[a_nome_parc] = {dtnome[0][0]};

$_historico_b = ‘Pagto do valor doc. num. ‘.{Doc}.’ de ‘.[a_nome_parc].’.’;

Retornou o nome do parceiro, mas não o correto.

O bug, eu informo ou vc já informou?

Não informei NADA, só fiz o teste aqui para confirmar seu procedimento, agora você deve passar para eles corrigirem, e ficar cobrando.

Olá,

No lookup da imagem acima faltou o where, fiz porém não retornou o nome.

Olá,

Atualizei para a versão 9.4.001 e testei um campo virtual na grid fazendo o select de um nome de um campo e não traz a informação, continua o problema ou o Bug.