estou criando uma biblioteca e hablitando ele dentro da aplicação porem ao executar esta retonando um erro de objeto nao identificado, olhando o codigo gerado o erro esta acontecendo quando vai executar o select que esta na macro sc_select ou sc_LOOKUP.
SEGUE ABAIXO O ERRO
(" Fatal error: Call to a member function Execute() on a non-object in C:\Soft\NetMake\v6\wwwroot\scriptcase\app\portal\grid_tab_centro_custo\grid_tab_centro_custo.php on line 1109 ")
usando todo o codigo dentro de um Metodo Php funciona perfeitamente, mas se colocado em uma biblioteca nao funciona.
[b]<?php
function mudar_label($sistema,$modulo,$menu_sel,$aplicacao_sel){
/**
* Selecting a field from another table
*/
// Check for record
$check_sql = "SELECT DISTINCT
id_sistema,
tx_sistema,
tx_descricao_sistema,
id_modulo,
tx_descricao_modulo,
id_menu,
tx_descricao_menu,
id_sub_menu,
tx_descricao_sub_menu,
id_aplicacao,
tx_nome_aplicacao,
tx_descricao_aplicacao1,
tx_tipo_aplicacao,
tx_descricao_aplicacao,
tx_decricao_menu,
tx_situacao_aplicacao,
id_objeto_bd"
. " FROM vw_sistema_aplicacao"
. " WHERE id_sistema = '" . $sistema . "'"
. " AND id_modulo = '" . $modulo. "'"
. " AND tx_descricao_menu = '".$menu_sel."'"
. " AND tx_nome_aplicacao = '".$aplicacao_sel."'";
sc_lookup(rs, $check_sql);
if (isset({rs[0][0]})) // Row found
{
$cod_menu = {rs[0][5]};
$cod_aplicacao = {rs[0][9]};
/**
* Selecting a field from another table using the recordset
*/
// Check for record
$check_sql = "SELECT DISTINCT
id_sistema,
id_modulo,
id_menu,
id_sistema_campo,
id_aplicacao,
tx_nome_campo,
tx_label_padrao,
tx_sistuacao_campo,
id_objeto_bd,
id_tabela_campo"
. " FROM tab_sistema_campo"
. " WHERE id_sistema = '" .$sistema ."'"
. " AND id_modulo = '" .$modulo ."'"
. " AND id_menu = '" .$cod_menu ."'"
. " AND id_aplicacao = '" .$cod_aplicacao."'"
. " ORDER BY id_sistema,id_modulo,id_menu,id_aplicacao,id_sistema_campo";
sc_select(dataset, $check_sql);
//initialize the field
$reg = 0;
sc_reset_global([var_arr_campo],[var_arr_label]);
if (false == {dataset}) // Error while accessing database
{
sc_error_message('Error while accessing database.');
}
else
{
$var_arr_campo = array();
$var_arr_label = array();
while(!$dataset->EOF)
{
$var_arr_campo[$reg] = $dataset->fields[5];
$var_arr_label[$reg] = $dataset->fields[6];
$reg = $reg + 1;
$dataset->MoveNext();
}
$dataset->Close();
}
sc_set_global($var_arr_campo,$var_arr_label);
}
else // No row found
{
$cod_menu = '';
$cod_aplicacao = '';
}
}
?>[/b]