";
}
if ($p_mostratdest == 1) {
$l_selectprodb = "SELECT E.QTDEESTOQUE,L.LOJA FROM LOJAS L JOIN ESTOQUE E ON E.CODLOJA = L.CODLOJA WHERE E.CODPRO = " . $l_codpro . " ORDER BY L.LOJA";
$a_regb = qry($con, $l_selectprodb, $a_camposb);
cria_matriz_campos($a_regb, $a_camposb, $l_a_prodb);
for ($j = 0; $j <= (sizeof($l_a_prodb) - 1); $j++) {
echo "
" . $l_a_prodb[$j][qtdeestoque] . "
";
}
} else {
echo "
" . GetQtdeEstoqueTotal($l_codpro) . "
";
}
echo "
";
if ($indice == 1 && !$apenasconsulta) {
echo"";
};
echo "";
}
function BuscaProdutos($p_codigo, $p_descricao, $p_codos, $pathvolta, $describ, $apenasconsulta = false) {
include '../auxiliar/parametros.inc';
$p_ispalm = lecookie("ispalm");
//se nao estiver com a venda aberta traz a tabela 5(consumidor) pra nao dar erro no select
if ($apenasconsulta) {
$p_codprodtabela = $p_tbpconspro;
} else {
$p_codprodtabela = TrazValorCampo('os', 'npreco', 'codos', $p_codos);
}
$l_selectprod = "select
p.qtdeparavnd ,p.codigo, p.codpro, p.ipi,
pti.preco as unitario,
(pti.preco * p.ipi / 100) as vlripi,
(coalesce(pti.preco,0) ) as precotab,
(coalesce(pti.precomin,0)) as precotab5,
coalesce(pti.preco,0) as unitario,
lower(p.descricao) as descricao ,p.fotopqnome
from produtos p
join prodtabelasitens pti on pti.codpro = p.codpro and pti.codprodtabela = $p_codprodtabela
where (coalesce(p.cadinativo,0)=0) ";
if ($p_codigo) {
$l_selectprod .= " and (upper(p.codigo) like upper('$p_codigo') ) ";
}
if ($p_tsopvenda == 1) {
$l_selectprod .= " and (p.ativo = 1) ";
}
if ($p_descricao) {
$l_selectprod .= " and (upper(p.descricao) like upper('%$p_descricao%') ) ";
}
if ($describ) {
$l_selectprod .= " and (upper(p.descricao) like upper('%$describ%') ) ";
}
$a_reg = qry($con, $l_selectprod, $a_campos);
$l_totp = ibase_num_rows($a_reg); // PEGA O TOTAL DE CLIENTES ANTES DE APLICAR O ROWS
$l_selectprod .= "order by $p_cpordbuscaprod rows 1 to $p_maxqtdeprodcons ";
//MONTA MATRIZ QUE VAI TRAZER OS PRODUTOS
//cria id do select
$a_reg = qry($con, $l_selectprod, $a_campos);
if (cria_matriz_campos($a_reg, $a_campos, $l_a_prod)) {
//se tiver resultado do select - quando encontra pelo menos um cliente
//include "../auxiliar/validaitem.php";
echo "";
return true;
} else {
return false;
}
}
function BuscaDadosAdicProd($p_codpro, &$p_custo) {
$l_selectprod = "select
coalesce(p.custo,0)as custo from produtos p where p.codpro = $p_codpro ";
//MONTA MATRIZ QUE VAI TRAZER OS PRODUTOS
//cria id do select
$a_reg = qry($con, $l_selectprod, $a_campos);
if (cria_matriz_campos($a_reg, $a_campos, $l_a_prod)) {
//se tiver resultado do select - quando encontra pelo menos um cliente
$p_custo = $l_a_prod[0][custo];
return true;
} else {
return false;
}
}
function GetQtdeCompra($p_codpro) {
$l_codloja = TrazValorCampo("senhas", "codloja", "codusu", lecookie('codusu'));
if (!$l_codloja) {
echo "ERRO!!! O usuário não tem loja associada.";
exit;
}
$l_selectprod = " Select coalesce(sum( I.QtdeNaoEntr ),0) as total
From PedidosComp P join PedidosCompItens I on P.CodPedComp = I.CodPedComp
Where i.codlojai = $l_codloja and I.codpro = $p_codpro and P.Previsao is not null
Having sum( I.QtdeNaoEntr ) > 0 "; //
//MONTA MATRIZ QUE VAI TRAZER OS PRODUTOS
//cria id do select
$a_reg = qry($con, $l_selectprod, $a_campos);
(cria_matriz_campos($a_reg, $a_campos, $l_a_prod));
return tratacamponulo($l_a_prod[0][total]);
}
function GetQtdeEstoqueFisico($p_codpro) {
$l_codloja = TrazValorCampo("senhas", "codloja", "codusu", lecookie('codusu'));
if (!$l_codloja) {
echo "ERRO!!! O usuário não tem loja associada.";
exit;
}
$l_selectprod = "select coalesce(sum(coalesce(qtdeestoque,0)),0) as qtdeestoque from estoque where codpro = $p_codpro and codloja = $l_codloja";
//MONTA MATRIZ QUE VAI TRAZER OS PRODUTOS
//cria id do select
$a_reg = qry($con, $l_selectprod, $a_campos);
(cria_matriz_campos($a_reg, $a_campos, $l_a_prod));
return tratacamponulo($l_a_prod[0][qtdeestoque]);
}
function GetQtdeEstoqueTotal($p_codpro) {
$qtdeEstoque = GetQtdeCompra($p_codpro) + GetQtdeEstoqueFisico($p_codpro);
$limiteEstoque = TrazValorCampo('config', 'limiteestoque', '1', '1');
// Estoque: se tiver menos que X, mostra a qtde disponível. Se tiver mas de X, mostrar X e bloquear a vender X (X = criar campo no config)
if ($qtdeEstoque > $limiteEstoque) {
$estdisp = $limiteEstoque;
} else {
$estdisp = $qtdeEstoque;
}
return $estdisp;
}
function BuscaDetProdutos($p_codpro) {
$p_codos = lecookie('codos');
if (!$p_codos) {
$p_codprodtabela = 5;
} else {
$p_codprodtabela = TrazValorCampo('os', 'npreco', 'codos', $p_codos);
}
$l_selectprod = "select
p.codigo, p.descricao, p.ipi, g.grupo, sg.subgrupo,
p.codbarras, p.caixamaster, p.qtdeinner, p.qtdeparavnd, p.ncm, p.pesoliq, p.pesobruto, p.obs,
coalesce(pti.preco,0) as preco
from produtos p
join prodtabelasitens pti on pti.codpro = p.codpro and pti.codprodtabela = $p_codprodtabela
left join grupos g on g.codgru = p.codgru
left join subgrupos sg on sg.codsubgru = p.codsubgru
where p.codpro = $p_codpro ";
//echo $l_selectprod;
$a_reg = qry($con, $l_selectprod, $a_campos);
if (cria_matriz_campos($a_reg, $a_campos, $l_a_prod)) {
//se tiver resultado do select - quando encontra pelo menos um cliente
//include "../auxiliar/validaitem.php";
for ($i = 0; $i <= (sizeof($l_a_prod) - 1); $i++) {
MostraDetProduto($l_a_prod[$i][codigo], $l_a_prod[$i][descricao], $l_a_prod[$i][preco], $l_a_prod[$i][ipi], $l_a_prod[$i][grupo], $l_a_prod[$i][subgrupo], $l_a_prod[$i][codbarras], $l_a_prod[$i][caixamaster], $l_a_prod[$i][qtdeinner], $l_a_prod[$i][qtdeparavnd], $l_a_prod[$i][ncm], $l_a_prod[$i][pesoliq], $l_a_prod[$i][pesobruto], $l_a_prod[$i][obs]);
}
return true;
} else {
return false;
}
}
function BuscaLastVnd($p_codos , $pathvolta) {
include '../auxiliar/parametros.inc';
$l_selectprod = "select distinct
p.qtdeparavnd ,p.codigo, p.codpro, p.ipi,
pti.preco as unitario,
(pti.preco * p.ipi / 100) as vlripi,
(coalesce(pti.preco,0) ) as precotab,
(coalesce(pti.precomin,0)) as precotab5,
coalesce(max(oi.unitario),0) as unitario,
lower(p.descricao) as descricao ,p.fotopqnome,
(Extract (day from max(o.dataos)) || '/' || extract(month from max(o.dataos))
|| '/' || Extract (year from max(o.dataos) ))
as dataosfin, max(o.os)
from produtos p
join prodtabelasitens pti on pti.codpro = p.codpro and pti.codprodtabela = 4
join ositenspro oi on oi.codpro = p.codpro
join os o on o.codos = oi.codos
where (coalesce(p.cadinativo,0)=0) and (o.tipo = 2) and (o.codcli = (select o2.codcli from os o2 where o2.codos = $p_codos) )
group by p.qtdeparavnd ,p.codigo, p.codpro, p.ipi,
pti.preco, pti.precomin, p.descricao ,p.fotopqnome ";
$l_selectprod .= "order by $p_cpordbuscaprod rows 1 to $p_maxqtdeprodcons ";
//MONTA MATRIZ QUE VAI TRAZER OS PRODUTOS
//cria id do select
$a_reg = qry($con, $l_selectprod, $a_campos);
if (cria_matriz_campos($a_reg, $a_campos, $l_a_prod)) {
//se tiver resultado do select - quando encontra pelo menos um cliente
//include "../auxiliar/validaitem.php";
echo "";
return true;
} else {
return false;
}
}
function MostraProdutoChist($l_descricao, $l_codigo, $indice, $l_codpro, $unitario, $l_os , $l_dataos) {
include '../auxiliar/parametros.inc';
$vi = ($indice - 1);
echo "