$p_codigo"; if (!$p_ispalm) { echo"$p_descricao"; } echo" $p_qtde"; echo" R$" . number_format($p_unitario, 2, ',', '.') . ""; if (!$p_ispalm) { echo" $ipi% R$" . number_format($unitcomipi, 2, ',', '.') . " $p_desc% R$" . number_format($unitariofinal, 2, ',', '.') . " "; } echo" R$" . number_format($p_totalprd, 2, ',', '.') . ""; echo " Excluir Produto do Pedido Alterar Produto "; } function Mostratra($p_codtra, $p_transp) { echo "

$p_transp

"; } function Mostraforma($p_codforma, $p_forma) { echo "

$p_forma

"; } function MostraVendasEditaveis($p_dataosfin, $p_os, $p_total, $p_codos, $p_tipo) { echo "

$p_dataosfin | $p_os | $p_total "; //se for venda cancelada if ($p_tipo == 4) { echo "canc."; } echo "

"; } function MostraVendasStatus($p_dataosfin, $p_os, $p_total, $p_codos) { echo "

$p_dataosfin | $p_os | $p_total

"; } //FUNCOES DA OS //GERA O COD OS function GeraCodLan() { include 'conecta.inc.php'; $l_selectcodos = 'select (GEN_ID(GNCODLANC,1) + ( GEN_ID(GNCODLOJA,0) * 10000000)) as codos from rdb$database'; $l_res = ibase_query($con, $l_selectcodos); //cria o id q recebe o select $l_lin = ibase_fetch_row($l_res); //pega a unica linha que o select retorna return $l_lin[0]; //pega o campo pelo unico indice que o select retornou } function Getdesccli($cdVND) { include 'conecta.inc.php'; $l_selectcdcli = "SELECT COALESCE(C.DESCVENDA,0) AS DESCVENDA FROM CLIENTES C JOIN OS O ON O.CODCLI = C.CODCLI WHERE O.CODOS = $cdVND ROWS 1 TO 1"; $l_res = ibase_query($con, $l_selectcdcli); //cria o id q recebe o select $l_lin = ibase_fetch_row($l_res); //pega a unica linha que o select retorna return $l_lin[0]; //pega o campo pelo unico indice que o select retornou } function getSalnovo($cdv) { include 'conecta.inc.php'; $l_selectcdcli = "select sum((oi.unitcomdesc * oi.qtde) - (oi.precobase * oi.qtde)) as saldo from ositenspro oi join os o on oi.codos = o.codos join vendedores v on o.codvnd = v.codvnd left join senhas s on s.codvnd = v.codvnd Where o.tipo = 2 and s.codusu = $cdv"; $l_res = ibase_query($con, $l_selectcdcli); //cria o id q recebe o select $l_lin = ibase_fetch_row($l_res); //pega a unica linha que o select retorna return $l_lin[0]; //pega o campo pelo unico indice que o select retornou } //INCLUI OS - retorna o codos que tem a nova os (para poder depois incluir os itens) function IncluiOS($p_codcli, $p_codvnd, $p_codloja, $p_vvcodtiposai, $p_codtra, $p_codforma, $p_razao) { if (!$p_codloja) { echo "ERRO!!! Nenhuma Loja Associada na Senha..."; exit; } include "conecta.inc.php"; include "../auxiliar/parametros.inc"; include "../bd/bd_clientes.inc"; $l_codos = GeraCodLan(); $l_codusu = lecookie('codusu'); /* palm */ // utilizar a tabela de preço associada ao cadastro. Se não tiver nada associado usar a Tabela 5 – Consumidor $l_npreco = TrazValorCampo('clientes', 'codprodtabela', 'codcli', $p_codcli); if (!$l_npreco){ $l_npreco = 5; } $Comissao = BuscaComissao($p_codcli); // CRIA O INSERT /*palm*/ $tp = 2; if ($p_lancaorc == 1) { $tp = 1; } $l_insereos = "INSERT INTO OS (codos, codcli, codvnd, dataos, comissao, horainicio, tipo, codloja,codlojasai, codtiposai,codtra, codforma, comfinanciamento, tipolanc, codusucria, codstatus, npreco,dataosfin, horatermino) values( $l_codos, $p_codcli, (select codvnd from senhas where codusu = $l_codusu), current_date, $Comissao, current_time, $tp , $p_codloja,$p_codloja, $p_vvcodtiposai ,$p_codtra, $p_codforma,'N',1,$l_codusu,$p_codstatus, $l_npreco, current_date, current_time)"; if ($p_lancaab == 1) { $l_insereos = "INSERT INTO OS (codos, codcli, codvnd, dataos, comissao, horainicio, tipo, codloja,codlojasai, codtiposai,codtra, codforma, comfinanciamento, tipolanc, codusucria, codstatus, npreco) values( $l_codos, $p_codcli, (select codvnd from senhas where codusu = $l_codusu), current_date, $Comissao, current_time, $tp , $p_codloja,$p_codloja, $p_vvcodtiposai ,$p_codtra, $p_codforma,'N',1,$l_codusu,$p_codstatus, $l_npreco)"; } //echo $l_insereos . "
"; //mostra o insert que executou - so para testes if (exec_sql_simples($con, $l_insereos)) { setcookie("codcli", $p_codcli, 0, '/'); setcookie("razao", $p_razao, 0, '/'); return setcookie("codos", $l_codos, 0, '/'); } else { return false; //echo "
ERRO AO LANCAR PEDIDO. CONTATE O SUPORTE
"; } } //FINALIZA OS function FinalizaOs($p_codos) { include "conecta.inc.php"; include "../auxiliar/parametros.inc"; // CRIA O update $tp = 2; if ($p_lancaorc == 1) { $tp = 1; } $l_updateos = "update OS set codstatus =$p_codstatusfin, tipo = $tp where codos = $p_codos"; //echo $l_updateos; //mostra o comando que executou - so para testes //exit; return (exec_sql_simples($con, $l_updateos)); } //CANCELA OS (pedido) function CancelaOs($p_codos) { include "conecta.inc.php"; include "../auxiliar/parametros.inc"; $cdu = lecookie('codusu'); $tp = 4; if ($p_lancaorc == 1) { $tp = 3; } // CRIA O update $l_updateos = "update OS set tipo = $tp,dataexc = current_timestamp,codusuexc = $cdu, excmotivo='Cancelado via AFV' where codos = $p_codos"; //echo $l_updateos; //mostra o comando que executou - so para testes return (exec_sql_simples($con, $l_updateos)); } function DadosAdic(&$p_codloja, &$p_loja, &$p_codtra, &$p_transportadora, &$p_codforma, &$p_formapagto, &$p_codvnd, &$p_vendedor, &$p_razao, &$p_codtiposai, &$p_tiposai, $p_codcli, $p_codusu, $p_dtentrega) { include 'conecta.inc.php'; include_once '../auxiliar/parametros.inc'; //MONTA O SELECT PRA TRAZER OS DADOS ADICIONAIS PRA INSERIR A OS $l_selectdadosadic = "SELECT S.CODLOJA, L.LOJA, C.CODTRA, lower(T.TRANSPORTADORA) as transportadora, C.CODFORMA, F.DESCRICAO, S.CODVND, lower(V.VENDEDOR) as vendedor, lower(C.RAZAO) as razao FROM SENHAS S LEFT JOIN CLIENTES C ON 1=1 LEFT JOIN CONFIGOS CO ON 1=1 LEFT JOIN LOJAS L ON L.CODLOJA = S.CODLOJA LEFT JOIN TRANSPORTADORA T ON T.CODTRA = C.CODTRA LEFT JOIN FORMAS F ON F.CODFORMA = C.CODFORMA LEFT JOIN VENDEDORES V ON V.CODVND = S.CODVND WHERE C.CODCLI = $p_codcli AND CODUSU = $p_codusu"; //echo $l_selectdadosadic; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_selectdadosadic, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_adic)) { //se tiver resultado do select //passa o valor para as variaveis de referencia que ser? mostrado na pag de cadastro de clientes if (!$p_codloja) { $p_codloja = tratacamponulo($l_a_adic[0][codloja]); } if (!$p_loja) { $p_loja = tratacamponulo($l_a_adic[0][loja]); } if (!$p_codtra) { $p_codtra = tratacamponulo($l_a_adic[0][codtra]); } if (!$p_transportadora) { $p_transportadora = tratacamponulo($l_a_adic[0][transportadora]); } if (!$p_codforma) { $p_codforma = tratacamponulo($l_a_adic[0][codforma]); } if (!$p_formapagto) { $p_formapagto = tratacamponulo($l_a_adic[0][descricao]); } if (!$p_codvnd) { $p_codvnd = tratacamponulo($l_a_adic[0][codvnd]); } if (!$p_vendedor) { $p_vendedor = tratacamponulo($l_a_adic[0][vendedor]); } if (!$p_razao) { $p_razao = tratacamponulo($l_a_adic[0][razao]); } if (!$p_codtiposai) { $p_codtiposai = $p_codtiposai_padrao ; } if (!$p_tiposai) { $p_tiposai = 'Venda'; } } else { echo "
Erro ao buscar campos para inserir OS.
"; } } //Busca Total da Os function BuscaTotOS($p_codos, &$p_totalos, &$p_desc, &$p_ipi, &$p_qtdefaltasubst, &$p_totalbruto, &$p_totalicmssubst, &$p_descpct, &$p_descvlr) { include 'conecta.inc.php'; //ATUALIZA O O.TOTAL DA TABELA OS $comando = "UPDATE OS SET TOTAL = (SELECT SUM(COALESCE(OI.TOTALCOMDESC,0) + COALESCE(OI.VLRSUBST,0)) FROM OSITENSPRO OI WHERE OI.CODOS = $p_codos ) WHERE CODOS = $p_codos "; //echo $comando; die; exec_sql_simples($con, $comando); //MONTA O SELECT PRA TRAZER OS DADOS ADICIONAIS PRA INSERIR A OS $l_selectdadosadic = "SELECT o.total, cast((((sum(totalprd) - sum((coalesce(totalprd,0)-(coalesce(oi.descontopct,0) * coalesce(totalprd,0)/100)))) * 100 ) / sum(totalprd)) as numeric(10,2)) as desconto, sum((oi.unitcomdesc * oi.qtde) - (oi.unitcdescsemipi * oi.qtde)) as valipi, sum(((oi.unitcomdesc * oi.QTDEEXPFALTA) + (oi.QTDEEXPFALTA * (COALESCE(oi.VLRSUBST,0) / oi.QTDE)))) AS qtdefaltasubst, sum(oi.unitcomdesc * oi.qtde) as totalbruto, iif(sum(coalesce(oi.precobase,0)) = 0 , 0 , (sum( ((oi.precobase * oi.qtde) - (oi.unitcdescsemipi * oi.qtde))) / sum((oi.precobase * oi.qtde) )*100)) as descontopct, o.toticmssubst, sum( ((oi.precobase * oi.qtde) - (oi.unitcdescsemipi * oi.qtde))) as descvlr from os o join ositenspro oi on oi.codos = o.codos where o.codos = $p_codos group by o.toticmssubst,o.total "; // echo $l_selectdadosadic; die;//mostra o select - so para testes //MONTA MATRIZ //cria id do select $a_reg = qry($con, $l_selectdadosadic, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_adic)) { //se tiver resultado do select //passa o valor para as variaveis de referencia que ser? mostrado na pag de cadastro de clientes $p_totalos = $l_a_adic[0][total]; $p_desc = $l_a_adic[0][desconto]; $p_ipi = $l_a_adic[0][valipi]; $p_qtdefaltasubst = $l_a_adic[0][qtdefaltasubst]; $p_totalbruto = $l_a_adic[0][totalbruto]; $p_totalicmssubst = $l_a_adic[0][toticmssubst]; $p_descpct = $l_a_adic[0][descontopct]; $p_descvlr = $l_a_adic[0][descvlr]; if (!$p_totalos) { $p_totalos = 0; } } } //ITENS DA OS //GERA O NUMITEM function GeraNumItem($p_codos) { include 'conecta.inc.php'; $l_selectnumitem = "select (coalesce(max(coalesce(numitem,0)),0) + 1) as numitem from ositenspro where codos = $p_codos"; $l_res = ibase_query($con, $l_selectnumitem); //cria o id q recebe o select $l_lin = ibase_fetch_row($l_res); //pega a unica linha que o select retorna return $l_lin[0]; //pega o campo pelo unico indice que o select retornou } //INCLUI ITENS DA OS function IncluiItensOs($p_codos, $p_codpro, $p_qtde, $p_numitem, $p_desconto, $p_unitario, $p_pbase) { include "../bd/conecta.inc.php"; //include "../bd/bd_produtos.inc"; BuscaDadosAdicProd($p_codpro, &$p_custo); $l_desccli = Getdesccli($p_codos); $l_desccliv = $l_desccli * ($p_unitario) / 100; $l_unitfim = $p_unitario - $l_desccliv; $l_desc = $p_desconto * ($p_unitario) / 100; //fa?o a conta aki pra colocar no insert depois $l_insereitensos = "INSERT INTO OSITENSPRO (codos, codpro, qtde, numitem, descontopct, unitario, custo, desconto,codlojasaii, precobase,ipi) values( $p_codos,$p_codpro,$p_qtde,$p_numitem, $p_desconto, $l_unitfim, $p_custo,$l_desc, (select codloja from os where codos = $p_codos), $p_pbase , (select case when (p.ipivnd = 'S') then p.ipi when (p.ipivnd <> 'S') then '0' end from produtos p where p.codpro = $p_codpro) )"; //echo $l_insereitensos;die; //mostra o insert que executou - so para testes //exit; return (exec_sql_simples($con, $l_insereitensos)); } //BUSCA E MOSTRA ITENS DA OS function BuscaItensOs($p_codos, $p_campoordpedidos = false, $p_numitem = false) { include 'conecta.inc.php'; include_once '../auxiliar/parametros.inc'; //palm $p_ispalm = lecookie("ispalm"); if (!$p_codos) { //echo "Sem OS"; exit; } // palm //MONTA O SELECT PRA TRAZER OS ITENS $l_selectitensos = "select (Extract (day from OI.prazoent) || '/' || extract(month from OI.prazoent) || '/' || Extract (year from OI.prazoent)) as prazoent,p.codpro, numitem , codigo, lower(descricao) as descricao, cast(coalesce(oi.descontopct,0)as numeric(10,2)) as descontopct, cast(coalesce(qtde,0) as numeric(10,0)) as qtde, cast(coalesce(oi.unitario,0)as numeric(10,2)) as unitario, cast(coalesce(oi.UNITCOMDESC,0)as numeric(10,2)) as unitariofinal, cast((coalesce(oi.unitario,0) + ((coalesce(oi.unitario,0) * oi.ipi/100 )) )as numeric(10,2)) as unitcomipi, cast((oi.unitcomdescdiluido * oi.qtde ) as numeric(10,2)) as totalitem, cast((coalesce(totalprd,0))as numeric(10,2)) as TotItemSemDesc, coalesce(total,0) as total, oi.desconto, oi.ipi from os o join ositenspro oi on oi.codos = o.codos join produtos p on p.codpro = oi.codpro where o.codos = $p_codos "; // /palm if ($p_numitem) { $l_selectitensos .= " and numitem = $p_numitem "; } if ($p_campoordpedidos) { $l_selectitensos .= " order by $p_campoordpedidos "; } //echo $l_selectitensos;die; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_selectitensos, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente echo ""; echo" "; if (!$p_ispalm) { echo" "; } echo" "; echo" "; if (!$p_ispalm) { echo" "; } echo" "; for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { $id = $i % 2; MostraItemOs($l_a_itens[$i][numitem], $l_a_itens[$i][descricao], $l_a_itens[$i][codigo], $l_a_itens[$i][qtde], $l_a_itens[$i][unitario], $l_a_itens[$i][totalitem], $l_a_itens[$i][descontopct], $l_a_itens[$i][codpro], $l_a_itens[$i][ipi], $id,$l_a_itens[$i][unitcomipi],$l_a_itens[$i][unitariofinal]); } echo"
CodigoProdutoQtdeUnitárioIPI Unit c/ IPI Desc Unit FinalTotItem
"; RETURN TRUE; } else { echo "
Nenhum item encontrado.
"; RETURN FALSE; } } function BuscaItensDadosAdic($p_codos, $p_numitem, &$p_unitario) { include 'conecta.inc.php'; //MONTA O SELECT PRA TRAZER OS ITENS $l_selectitensos = "select unitario from ositenspro where codos = $p_codos and numitem = $p_numitem"; //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_selectitensos, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { $p_unitario = $l_a_itens[0][unitario]; } } //EXCLUI ITENS DA OS function ExcluiItemOs($p_codos, $p_numitem) { include "conecta.inc.php"; // CRIA O DELETE $l_deleteitemos = "delete from ositenspro where codos = $p_codos and numitem = $p_numitem"; //echo $l_deleteitemos; //mostra o comando que executou - so para testes return (exec_sql_simples($con, $l_deleteitemos)); } //ALTERA ITEM DA OS function AlteraItemOs($p_codos, $p_numitem, $p_qtde, $p_desc, $p_unitario) { include 'conecta.inc.php'; include '../auxiliar/parametros.inc'; //Cria o update $l_updateitemos = "update ositenspro oi set codpro = codpro "; if ($p_qtde) { $l_updateitemos .= " , qtde = $p_qtde"; } //joga desconto alterando o valor unitario if ($p_desc) { if ($p_aplicdescpreco) { $p_unitario = (($p_unitario) - round(($p_unitario * $p_desc / 100), 3) ); if (!$p_numitem) { //calcula no sql o valor unitario de todos os produtos da venda aplicando o desconto $p_unitario = "(SELECT VALORFINAL FROM TRUNCA( (select oi2.unitario from ositenspro oi2 where oi2.codos = oi.codos and oi2.numitem = oi.numitem ),3)) - (SELECT VALORFINAL FROM TRUNCA( ((select oi2.unitario from ositenspro oi2 where oi2.codos = oi.codos and oi2.numitem = oi.numitem ) * $p_desc/100),3))"; } $l_updateitemos .= " , desconto = 0 "; } else { if (!$p_numitem) { $p_unitario = "(SELECT VALORFINAL FROM TRUNCA( (select oi2.unitario from ositenspro oi2 where oi2.codos = oi.codos and oi2.numitem = oi.numitem ),3))"; } else { BuscaItensDadosAdic($p_codos, $p_numitem, &$p_unitario); } $l_updateitemos .= " , desconto = ($p_desc * ($p_unitario)/100) "; } } $l_updateitemos .= " , unitario = $p_unitario "; $l_updateitemos .= " where codos = $p_codos"; if ($p_numitem) { $l_updateitemos .= " and numitem = $p_numitem "; } // echo $l_updateitemos; //mostra o comando que executou - so para testes // exit; return (exec_sql_simples($con, $l_updateitemos)); } //Busca Transportadoras function BuscaTransportadoras($transp) { include 'conecta.inc.php'; //MONTA O SELECT PRA TRAZER OS ITENS $l_selecttra = "select codtra, transportadora from transportadora where upper(transportadora) like upper('%$transp%') "; //echo $l_selecttra; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_selecttra, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { MostraTra($l_a_itens[$i][codtra], $l_a_itens[$i][transportadora]); } RETURN TRUE; } else { echo "
Nenhuma transportadora encontrada.
"; RETURN FALSE; } } //Busca Transportadoras function BuscaFormasPagto($forma) { include 'conecta.inc.php'; //MONTA O SELECT PRA TRAZER OS ITENS $l_selectforma = "select codforma, descricao from formas where upper(descricao) like upper('%$forma%') "; // echo $l_selectforma; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_selectforma, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { Mostraforma($l_a_itens[$i][codforma], $l_a_itens[$i][descricao]); } RETURN TRUE; } else { echo "
Nenhuma transportadora encontrada.
"; RETURN FALSE; } } /* * matriz que traz os produtos da venda - usava isso pra ver se um produto ja foi incluso, * so que eh melhor dar um select e buscar por esse produto. por isso nao uso mais essa fun??o */ function MatrizItensOs($p_codos) { include 'conecta.inc.php'; if (!$p_codos) { echo "Erro. Sem OS"; exit; } //MONTA O SELECT PRA TRAZER OS ITENS $l_selectitensos = "select p.codpro, numitem , codigo, lower(descricao) as descricao, cast(coalesce(oi.descontopct,0)as numeric(10,2)) as descontopct, cast(coalesce(qtde,0) as numeric(10,0)) as qtde, cast(coalesce(unitario,0)as numeric(10,2)) as unitario, cast((oi.unitcomdescdiluido * oi.qtde ) as numeric(10,2)) as totalprd, coalesce(total,0) as total, oi.desconto from os o join ositenspro oi on oi.codos = o.codos join produtos p on p.codpro = oi.codpro where o.codos = $p_codos "; //echo $l_selectitensos; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_selectitensos, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) //se tiver resultado do select - quando encontra pelo menos um cliente RETURN $l_a_itens; } function ItemJaExistente($p_codos, $p_codpro) { $l_selectcli = "SELECT codpro from ositenspro where codos = $p_codos and codpro = $p_codpro"; $a_reg = qry($con, $l_selectcli, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_cli)) { return true; } else { return false; } } function GeraPrazoEnt($p_codos, $p_datamin = false) { include 'conecta.inc.php'; include_once '../auxiliar/datas.inc'; $p_datamin = ConverteDtUSABR($p_datamin); //converte a dataminima para o padrao americano ///trata nulo, se nao for nulo joga as aspas simples pra gravar no banco if (!$p_datamin) { $p_datamin = 'null'; } else { $p_datamin = "'" . $p_datamin . "'"; } $comando = "INSERT INTO OSAUXPRAZO (CODOS, STATUS, DATAMIN, REGISTRO) VALUES( $p_codos, 1, $p_datamin, current_timestamp)"; // echo $comando; return exec_sql_simples($con, $comando); } function BuscaPrazoEnt($p_codos, &$data1, &$valor1, &$data2, &$valor2, &$data3, &$valor3) { include 'conecta.inc.php'; include_once '../auxiliar/datas.inc'; if (!$p_codos) { echo "Erro. Sem OS"; exit; } //MONTA O SELECT $l_select = "select cast(data1 as date) as data1, cast(data2 as date) as data2, cast(data3 as date) as data3, cast(valor1 as numeric(10,2)) as valor1, cast(valor2 as numeric(10,2)) as valor2, cast(valor3 as numeric(10,2)) as valor3 from OSAUXPRAZO where codos = $p_codos and status = 3 order by registro desc rows 1 to 1"; //echo $l_select; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { $data1 = ConverteDtUSABR($l_a_itens[$i][data1]); $data2 = ConverteDtUSABR($l_a_itens[$i][data2]); $data3 = ConverteDtUSABR($l_a_itens[$i][data3]); $valor1 = $l_a_itens[$i][valor1]; $valor2 = $l_a_itens[$i][valor2]; $valor3 = $l_a_itens[$i][valor3]; } RETURN TRUE; } } function JaRegistrou($p_codos) { include 'conecta.inc.php'; if (!$p_codos) { echo "Erro. Sem OS"; exit; } //MONTA O SELECT $l_select = "select codos from OSAUXPRAZO where codos = $p_codos order by registro desc rows 1 to 1"; //echo $l_select; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { $os = $l_a_itens[$i][codos]; } if ($os) { RETURN TRUE; } else { RETURN false; } } } function GetStatusOsAuxPrazo($p_codos) { include 'conecta.inc.php'; include '../auxiliar/parametros.inc'; //crio uma nova conexao pra poder fecha-la depois //pra pegar sempre os dados atualizados //$banco = 'localhost:C:\wamp\www\PALM\bd\TESTEDINAMICO.gd'; $con = ibase_connect($banco, $usuario, $senha, ''); if (!$p_codos) { echo "Erro. Sem OS"; exit; } //MONTA O SELECT $l_select = "select status from OSAUXPRAZO where codos = $p_codos order by status asc, registro desc "; //echo $l_select; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { $status = $l_a_itens[$i][status]; } ibase_close($con); //fecha a conexao return $status; } } //para tirar as os e inclui-la depois... - pra garantir que estar? atualizado function DeletaOsAuxPrazo($p_codos) { include 'conecta.inc.php'; $comando = "DELETE FROM OSAUXPRAZO WHERE CODOS = $p_codos"; // echo $comando; return exec_sql_simples($con, $comando); } function MostraDetalhePrazos($p_codos) { include 'conecta.inc.php'; include '../auxiliar/datas.inc'; if (!$p_codos) { echo "Erro. Sem OS"; exit; } //MONTA O SELECT $l_select = "select p.codigo,p.descricao, cast(oi.qtde as numeric(10,0)) as qtde , cast(oi.prazoent as date) as prazoent from ositenspro oi join produtos p on p.codpro = oi.codpro where oi.codos = $p_codos order by oi.prazoent"; //echo $l_select; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente echo " Codigo | Descricao | Qtde
"; $p_prazoant = ''; for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { $p_codigo = $l_a_itens[$i][codigo]; $p_descricao = $l_a_itens[$i][descricao]; $p_qtde = $l_a_itens[$i][qtde]; $p_prazoent = $l_a_itens[$i][prazoent]; $p_prazoent = ConverteDtUSABR($p_prazoent); //converte a data if ($p_prazoant == $p_prazoent) { echo "
$p_codigo | $p_descricao | $p_qtde "; } else { echo "

Prazo de Entrega: $p_prazoent
"; echo "$p_codigo | $p_descricao | $p_qtde "; $p_prazoant = $p_prazoent; } } } } function FaturamentoMinEntrega() { include '../auxiliar/parametros.inc'; include 'conecta.inc.php'; $con = ibase_connect($banco, $usuario, $senha, ''); $l_select = "select FATURAMENTOMIN from CONFIGOS ROWS 1 TO 1 "; //echo $l_select; die; $a_reg = qry($con, $l_select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { $faturamentomin = $l_a_itens[0][faturamentomin]; ibase_close($con); //fecha a conexao return $faturamentomin; } } function AbreVenda($p_codos) { include 'conecta.inc.php'; include '../auxiliar/datas.inc'; if (!$p_codos) { echo "Erro. Sem OS"; exit; } //MONTA O SELECT $l_select = "select c.codcli, c.razao, o.preventrega, o.codtra, o.codforma , f.descricao, t.transportadora, substring(o.obs from 1 for 255) as obs from os o join clientes c on c.codcli = o.codcli left join transportadora t on t.codtra = o.codtra left join formas f on f.codforma = o.codforma where o.codos = $p_codos"; //echo $l_select;die; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { $p_codcli = $l_a_itens[0][codcli]; $p_razao = $l_a_itens[0][razao]; $p_dtentrega = ConverteDtUSABR($l_a_itens[0][preventrega]); $p_codforma = $l_a_itens[0][codforma]; $p_obs = $l_a_itens[0][obs]; $p_forma = $l_a_itens[0][descricao]; $p_codtra = $l_a_itens[0][codtra]; $p_transportadora = $l_a_itens[0][transportadora]; setcookie("codcli", $p_codcli, 0, '/'); setcookie("razao", $p_razao, 0, '/'); setcookie("dtentrega", $p_dtentrega, 0, '/'); setcookie("obs", $p_obs, 0, '/'); setcookie("forma", $p_forma, 0, '/'); setcookie("codforma", $p_codforma, 0, '/'); setcookie("transp", $p_transportadora, 0, '/'); setcookie("codtra", $p_codtra, 0, '/'); return setcookie("codos", $p_codos, 0, '/'); } } function BuscaVendasEditaveis($p_codcli) { include 'conecta.inc.php'; include '../auxiliar/parametros.inc'; include '../auxiliar/datas.inc'; include '../bd/bd_senhas.inc'; if ($abrevendacancelada == 1) { $tipo = "((o.tipo = 2) or (o.tipo = 4))"; } else { $tipo = "(o.tipo = 2)"; } $p_codvnd = GetCodVnd(); //MONTA O SELECT PRA TRAZER OS ITENS $l_selectforma = "select o.codos, o.os, o.total , o.dataos, o.tipo from os o left join status st on st.codstatus = o.codstatus where o.codcli = $p_codcli and o.codstatus = $p_codstatus and o.codvnd = $p_codvnd and $tipo order by o.dataos desc "; // echo $l_selectforma; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_selectforma, $a_campos); include '../html/htmlini.php'; include '../html/linkprincipal.php'; if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente echo "


Data | Num Venda | Total



"; for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { MostraVendasEditaveis(ConverteDtUSABR($l_a_itens[$i][dataos]), $l_a_itens[$i][os], "R$ " . $l_a_itens[$i][total], $l_a_itens[$i][codos], $l_a_itens[$i][tipo]); } RETURN TRUE; } else { echo "
Nenhuma venda encontrada.
"; RETURN FALSE; } include '../html/htmlfin.php'; } function GetQtdeParcelas() { include '../auxiliar/parametros.inc'; include 'conecta.inc.php'; $codos = $_COOKIE['codos']; $con = ibase_connect($banco, $usuario, $senha, ''); $l_select = "select f.quant from os o join formas f on f.codforma = o.codforma where o.codos = $codos "; $a_reg = qry($con, $l_select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { $quant = $l_a_itens[0][quant]; ibase_close($con); //fecha a conexao return $quant; } } function AlteraStatusOs($p_codos) { include "conecta.inc.php"; include "../auxiliar/parametros.inc"; // include "../bd/funcoes.inc"; $p_codusu = lecookie("codusu"); // CRIA O update $l_updateos = "update OS set codstatus = $p_codstatusfin where codos = $p_codos"; $l_logstatus = "insert into osstatuslog (codos,codusu,codstatusnew, codstatusold, data,obs ) values ($p_codos, $p_codusu, $p_codstatusfin,$p_codstatus,current_timestamp, 'ALTERA??O VIA WEB') "; //echo $l_updateos; //mostra o comando que executou - so para testes //exit; exec_sql_simples($con, $l_logstatus); return (exec_sql_simples($con, $l_updateos)); } //busca as vendas que foram digitadas pelo usuario que logou no sistema function BuscaVendasEmDigitacao($p_codusu) { include 'conecta.inc.php'; include '../auxiliar/parametros.inc'; include '../auxiliar/datas.inc'; //MONTA O SELECT PRA TRAZER OS ITENS $l_selectforma = "select o.codos, o.os, o.total , o.dataos from os o where o.codusucria = $p_codusu and o.codstatus = $p_codstatus and o.tipo = 2 order by o.dataos desc "; //echo $l_selectforma; //mostra o select - so para testes //MONTA MATRIZ QUE VAI TRAZER OS CLIENTES //cria id do select $a_reg = qry($con, $l_selectforma, $a_campos); include '../html/htmlini.php'; include '../html/linkprincipal.php'; if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { //se tiver resultado do select - quando encontra pelo menos um cliente echo "

Alterar Status:.

"; echo "


Data | Num Venda | Total



"; for ($i = 0; $i <= (sizeof($l_a_itens) - 1); $i++) { MostraVendasStatus(ConverteDtUSABR($l_a_itens[$i][dataos]), $l_a_itens[$i][os], "R$ " . $l_a_itens[$i][total], $l_a_itens[$i][codos], $l_a_itens[$i][tipo]); } RETURN TRUE; } else { echo "
Nenhuma venda encontrada.
"; RETURN FALSE; } include '../html/htmlfin.php'; } /* INICIO DA BUSCA DO HISTORICO DO VENDEDOR */ function BuscaHistVenda($p_codcli=false, $p_dtini=false, $p_dtfin=false) { include '../bd/conecta.inc.php'; include_once '../auxiliar/datas.inc'; include '../bd/bd_senhas.inc'; $p_codvnd = GetCodVnd(); if ($p_codcli) { $where = " and (o.codcli = $p_codcli) "; } if (($p_dtini) || ($p_dtfin)) { if ($p_dtini) { $p_dtini = ConverteDtUSABR($p_dtini); } else { $p_dtini = '01/01/1000'; } if ($p_dtfin) { $p_dtfin = ConverteDtUSABR($p_dtfin); } else { $p_dtfin = '01/01/5000'; } $where .= " and (o.dataos between '$p_dtini' and '$p_dtfin') "; } $select = " SELECT distinct cast(substring(o.obs from 1 for 500) as varchar(500)) as obs, Cast(sum( distinct oi.UNITCOMDESCDILUIDO * (OI.Qtde - (Select coalesce(Sum(qtde),0) From ExpedicaoItens EI Where Ei.CodOs = OI.CodOs and Ei.NumItemOs = Oi.NumItem)) ) as numeric(10,2)) as totsaldo, o.codos, os , c.razao, (Extract (day from o.dataos) || '/' || extract(month from o.dataos) || '/' || Extract (year from o.dataos)) dataos, coalesce(s.descricao,'') status, cast(o.total as numeric(10,2)) total, f.descricao as formapagto, tr.transportadora as transp, c.end_ent, c.cidade_ent, c.bairro_ent, c.uf_ent, c.cep_ent, cast(substring(e.obs from 1 for 500) as varchar(500)) as obsexp, (Extract (day from e.dtentrega) || '/' || extract(month from e.dtentrega) || '/' || Extract (year from e.dtentrega)) dataentrega, (select numnota from notafiscal nf where nf.codexp = e.codexp and anulada is null and cancelada is null and e.codloja = nf.codloja) as numnota FROM os O join ositenspro oi ON Oi.CodOs = O.CodOs left join status s on s.codstatus = o.codstatus join clientes c on c.codcli = o.codcli left join formas f on f.codforma = o.codforma left join transportadora tr on tr.codtra = o.codtra left join expedicaoitens ei on ei.codos = oi.codos left join expedicao e on e.codexp = ei.codexp Where (O.Tipo = 2) and (o.codvnd = $p_codvnd) $where group by o.codos,os , c.razao,o.dataos,s.descricao,o.total , obs, f.descricao, transp, c.end_ent, c.cidade_ent, c.bairro_ent, c.uf_ent, c.cep_ent, e.dtentrega, e.codloja,e.codexp, cast(substring(e.obs from 1 for 500) as varchar(500)) order by o.dataos, o.os "; $a_reg = qry($con, $select, $a_campos); //echo $select; if (cria_matriz_campos($a_reg, $a_campos, $l_a_cli)) { echo ""; for ($i = 0; $i <= (sizeof($l_a_cli) - 1); $i++) { $obs = $l_a_cli[$i][obs]; $codos = $l_a_cli[$i][codos]; $os = $l_a_cli[$i][os]; $dataosfin = $l_a_cli[$i][dataos]; $status = $l_a_cli[$i][status]; $total = $l_a_cli[$i][total]; $cliente = $l_a_cli[$i][razao]; $totsaldo = $l_a_cli[$i][totsaldo]; $formapagto = $l_a_cli[$i][formapagto]; $totsaldo = number_format($totsaldo, 2, ',', '.'); $total = number_format($total, 2, ',', '.'); $transp = $l_a_cli[$i][transp]; $end_ent = $l_a_cli[$i][end_ent]; $cidade_ent = $l_a_cli[$i][cidade_ent]; $bairro_ent = $l_a_cli[$i][bairro_ent]; $uf_ent = $l_a_cli[$i][uf_ent]; $cep_ent = $l_a_cli[$i][cep_ent]; $numnota = $l_a_cli[$i][numnota]; $dataentrega = $l_a_cli[$i][dataentrega]; $obsexp = $l_a_cli[$i][obsexp]; echo" "; BuscaItens($codos); echo""; } echo "
Pedido: $os Data: $dataosfin status: $status Total: R$$total Cliente: $cliente Ver Impresso Enviar por email
Nota Fiscal: $numnota Data Entrega: $dataentrega Prazo Pagto: $formapagto
Transp.: $transp
OBS: $obs
$obsexp
"; } include '../html/htmlfin.php'; } function BuscaItens($codos) { $select = " SELECT codigo,oi.ipi, lower(p.descricao) as descricaoitem, cast(coalesce(qtde,0) as integer) as qtde, cast(coalesce(oi.unitario,0)as numeric(10,2)) as unitario, cast(coalesce(precobase,0)as numeric(10,2)) as precobase, cast((oi.unitcomdescdiluido * oi.qtde ) as numeric(10,2)) as totitemsemdesc, cast(coalesce(unitcomdescdiluido,0)as numeric(10,2)) as unitarioipi, cast(coalesce(oi.descontopct,0)as numeric(10,2)) as desconto, (OI.Qtde - (Select coalesce(Sum(qtde),0) From ExpedicaoItens EI Where Ei.CodOs = OI.CodOs and Ei.NumItemOs = Oi.NumItem)) as falta, (Extract (day from OI.prazoent) || '/' || extract(month from OI.prazoent) || '/' || Extract (year from OI.prazoent)) as prazoent, cast(coalesce(oi.UNITCOMDESC,0)as numeric(10,2)) as unitariofinal, cast((coalesce(oi.unitario,0) + ((coalesce(oi.unitario,0) * oi.ipi/100 )) )as numeric(10,2)) as unitcomipi FROM OsItensPro OI JOIN Os O ON Oi.CodOs = O.CodOs join tiposaidas t on t.codtiposai = o.codtiposai join produtos p on p.codpro = oi.codpro left join status s on s.codstatus = o.codstatus where o.codos = $codos; "; $a_reg = qry($con, $select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_cli)) { echo " Codigo Produto Qtde Unitário IPI Unit Com IPI Desc Unit Final Total "; for ($i = 0; $i <= (sizeof($l_a_cli) - 1); $i++) { $codigo = $l_a_cli[$i][codigo]; $descricaoitem = $l_a_cli[$i][descricaoitem]; $qtde = $l_a_cli[$i][qtde]; $unitario = $l_a_cli[$i][unitario]; $totitemsemdesc = $l_a_cli[$i][totitemsemdesc]; $precobase = $l_a_cli[$i][precobase]; $falta = $l_a_cli[$i][falta]; $prazoent = $l_a_cli[$i][prazoent]; $ipi = $l_a_cli[$i][ipi]; $saldo = ($falta * $l_a_cli[$i][unitarioipi]); $unitcomipi = $l_a_cli[$i][unitcomipi]; $unitariofinal = $l_a_cli[$i][unitariofinal]; $desconto = $l_a_cli[$i][desconto]; $saldo = number_format($saldo, 2, ',', '.'); $unitario = number_format($unitario, 2, ',', '.'); $unitcomipi = number_format($unitcomipi, 2, ',', '.'); $unitariofinal = number_format($unitariofinal, 2, ',', '.'); $precobase = number_format($precobase, 2, ',', '.'); $totitemsemdesc = number_format($totitemsemdesc, 2, ',', '.'); $desconto = number_format($desconto, 2, ',', '.'); echo" $codigo $descricaoitem $qtde R$$unitario $ipi% R$$unitcomipi $desconto% R$$unitariofinal R$$totitemsemdesc "; } } } function GetNumOs($codos) { include '../auxiliar/parametros.inc'; include 'conecta.inc.php'; if (!$codos) { return false; } $con = ibase_connect($banco, $usuario, $senha, ''); $l_select = "select o.os from os o where o.codos = $codos "; //echo $l_select ; die; $a_reg = qry($con, $l_select, $a_campos); if (cria_matriz_campos($a_reg, $a_campos, $l_a_itens)) { $os = $l_a_itens[0][os]; ibase_close($con); //fecha a conexao return $os; } } function GeraImpresso($p_codos, $mostrarel = true) { $html = "







"; if ($mostrarel) { echo $html; } //Busca Cabe?alho : N? da Venda, Raz?o, CNPJ/CPF, RG/IE, Endere?o Completo, Fone, Contato, Forma de Pagto. $sql = " select o.os, c.razao, c.cpcn, c.rgie, c.endereco, c.bairro, c.cidade, c.uf, c.cep, c.complemento, c.fone1, c.contato1 ,f.descricao as formapagto, t.transportadora, (Extract (day from o.dataos) || '/' || extract(month from o.dataos) || '/' || Extract (year from o.dataos)) as dataos, v.vendedor,c.email, c.fax, (c.end_ent || ' - ' || c.bairro_ent || ' - ' || c.cidade_ent || ' - ' || c.uf_ent || ' - ' || c.cep_ent) as enderecoentrega, (c.endcob || ' - ' || c.bairrocob || ' - ' || c.cidadecob || ' - ' || c.ufcob || ' - ' || c.cepcob) as enderecocobranca from os o join clientes c on c.codcli = o.codcli left join formas f on f.codforma = o.codforma left join transportadora t on t.codtra = o.codtra join vendedores v on v.codvnd = o.codvnd where o.codos = $p_codos "; if (cria_matriz_campos_pelo_sql($sql, &$mestre)) { $html .= MostraMestreImpresso($mostrarel, $mestre[0][os], $mestre[0][razao], $mestre[0][cpcn], $mestre[0][rgie], $mestre[0][endereco], $mestre[0][bairro], $mestre[0][cidade], $mestre[0][uf], $mestre[0][cep], $mestre[0][complemento], $mestre[0][fone1], $mestre[0][contato1], $mestre[0][formapagto], $mestre[0][transportadora], $mestre[0][dataos], $mestre[0][vendedor], $mestre[0][email], $mestre[0][fax], $mestre[0][enderecoentrega], $mestre[0][enderecocobranca]); $formapagto = $mestre[0][formapagto]; //vai ser usado la em baixo } //Busca Itens : C?digo Aux., %Desc., $Desc, Qtde, $Total (Unit. Final * Qtde). $sql = " select p.codigo,substring(p.descricao from 1 for 35) as descricao, oi.DESCONTO, oi.qtde, cast((oi.unitcomdesc * oi.qtde) as numeric(10,2)) as tot, cast(oi.unitcomdesc as numeric(10,2)) as unitariofinal, cast((oi.unitario * (oi.ipi/100 + 1) )as numeric(10,2)) as consumidor, oi.ipi from os o join ositenspro oi on oi.codos = o.codos join produtos p on p.codpro = oi.codpro where o.codos = $p_codos "; $tags = "



"; $html .= $tags; if (cria_matriz_campos_pelo_sql($sql, &$itens)) { for ($i = 0; $i <= (sizeof($itens) - 1); $i++) { $html .= MostraItensImpresso($mostrarel, $itens[$i][codigo], $itens[$i][descricao], $itens[$i][desconto], $itens[$i][qtde], $itens[$i][tot], $itens[$i][unitariofinal], $itens[$i][consumidor], $itens[$i][ipi]); } } $tags = "
Cod. Produto Qtde Unit Total
"; if ($mostrarel) { echo $tags; } $html .= $tags; //Busca Totais: Qtde, IPI, Total BuscaTotOS($p_codos, &$p_totalos, &$p_desc, &$p_ipi, &$p_qtdefaltasubst, &$p_totalbruto, &$p_totalicmssubst, &$p_descpct, &$p_descvlr); $tags = "
SubTotal: R$ " . number_format($p_totalbruto, 2, ',', '.') . "
Total Final: R$ " . number_format($p_totalos, 2, ',', '.') . "

Obs: " . TrazValorCampo("os", "substring(obs from 1 for 255)", "codos", $p_codos) . "
"; if ($mostrarel) { $tags .= "







Voltar "; } $tags .= "
"; // class='impresso' - div geral para manipular todo o relatorio if ($mostrarel) { echo $tags; } $html .= $tags; return $html; } function MostraMestreImpresso($mostrarel, $p_os, $p_razao, $p_cpcn, $p_rgie, $p_endereco, $p_bairro, $p_cidade, $p_uf, $p_cep, $p_complemento, $p_fone1, $p_contato1, $p_formapagto, $p_transportadora, $p_data, $p_vendedor, $p_email, $p_fax, $p_enderecoEntrega, $p_enderecoCobranca) { $tags = " Venda: $p_os Data: $p_data
Cliente: $p_razao Vendedor: $p_vendedor CPF/CNPJ: $p_cpcn RG/IE: $p_rgie Endereco: $p_endereco $p_complemento Bairro: $p_bairro Cidade: $p_cidade CEP: $p_cep UF: $p_uf Fone: $p_fone1 Contato: $p_contato1 Fax: $p_fax Email: $p_email
Forma Pagto: $p_formapagto Transportadora: $p_transportadora Local de Entrega: $p_enderecoEntrega "; if ($mostrarel) { echo $tags; } return $tags; } function MostraItensImpresso($mostrarel, $p_codigo, $p_descricao, $p_desconto, $p_qtde, $p_tot, $p_unitariofinal, $p_consumidor, $p_ipi) { $tags = " $p_codigo $p_descricao " . number_format($p_qtde, 0, ',', '.') . " R$ " . number_format($p_unitariofinal, 2, ',', '.') . " R$ " . number_format($p_tot, 2, ',', '.') . " "; if ($mostrarel) { echo $tags; } return $tags; } function MostraItensEntrega($p_prazo, $p_vlrparcela, $p_vlrentrega) { $tags = " $p_prazo R$ " . number_format($p_vlrparcela, 2, ',', '.') . " R$ " . number_format($p_vlrentrega, 2, ',', '.') . " "; return $tags; } function GetLimiteDesconto() { include 'conecta.inc.php'; $con = ibase_connect($banco, $usuario, $senha, ''); $p_codusu = lecookie("codusu"); $l_selectnumitem = "SELECT COALESCE(OSMAXDESCITEM,-1) AS OS FROM SENHAS WHERE CODUSU = $p_codusu"; $l_res = ibase_query($con, $l_selectnumitem); //cria o id q recebe o select $l_lin = ibase_fetch_row($l_res); //pega a unica linha que o select retorna return $l_lin[0]; //pega o campo pelo unico indice que o select retornou } ?>