Ir para conteúdo
Fórum Script Brasil

inavoig.17

Membros
  • Total de itens

    17
  • Registro em

  • Última visita

Sobre inavoig.17

inavoig.17's Achievements

0

Reputação

  1. Olá, Boa tarde. Trabalho com desenvolvimento de sistemas e utilizo o postgre. Estava precisando de alguém que preste serviços de consultoria Postgre ou freelancer para fazer uma análise de algumas soluções implementadas aqui no meu projeto. Talvez dar algumas dicas, coisas do tipo. A empresa fica em São Paulo - SP na rua da consolação. Se alguém tiver interesse favor entrar em contato. gio@pmlnet.com.br
  2. Olá, bom dia. Estou com problemas em uma consulta que está muito lenta. Gostaria de ajuda para melhorar a performance desta consulta. Segue abaixo minha consulta: ======================================= SELECT PRINCIPAL =================================== /* Parte de uma tabela de com itens (tabela com bastante registros) e faz um inner join com uma viewer para retornar a movimentação dos ultimos 3 meses */ SELECT tmp.tmp_id_produ_refer, mov.qt_movim, mov.date_part FROM tmp_dados AS tmp INNER JOIN vrj.view_retorna_qtde_vendida_ultimos_tres_meses AS mov ON mov.id_unida = p_id_unida AND mov.id_produ_refer = tmp.tmp_id_produ_refer; ======================================= VIEWER PARA RETORNAR MOVIMENTACAO =================================== /*Viewer para retornar as movimentacoes, essas viewer faz consulta em uma tabela com uma massa de informações muito grande, fazendo inner join com tabelas que também tem bastante conteúdo */ CREATE OR REPLACE VIEW vrj.view_retorna_qtde_vendida_ultimos_tres_meses AS SELECT doc.id_unida, mov.id_produ_refer, SUM(mov.qt_movim) AS qt_movim, EXTRACT(MONTH FROM (mov.dt_movim :: DATE)) FROM vrj.tb_movim_locac AS mov /*Tabela de movimentações, tabela com muitos registros */ INNER JOIN vrj.tb_item_doc_fiscal AS ite /*Tabela com muitos registros */ ON ite.id_item_doc_fiscal = mov.id_item_doc_fiscal INNER JOIN vrj.tb_doc_fiscal AS doc /*Tabela com muitos registros */ ON ite.id_doc_fiscal = doc.id_doc_fiscal INNER JOIN vrj.tb_tipo_fatur AS tft /*Tabela com poucos registros */ ON tft.id_tipo_fatur = doc.id_tipo_fatur AND tft.cd_tipo_fatur = 'VD' -- Fixo para trazer somente NF de venda WHERE doc.dt_cancel is null AND DATE(mov.dt_movim) >= (date_trunc('MONTH',CURRENT_DATE-interval '3 MONTH')::date) GROUP BY doc.id_unida, mov.id_produ_refer, EXTRACT(MONTH FROM (mov.dt_movim :: DATE)); Se possivel gostária que fizessem uma análise dessa proceudure e me dissesem o que acham, se tem como melhorar,se o conceito aplicado está bom. Gostaria de dicas, novas tecnologias, coisas do tipo... Obrigado desde já
  3. Olá, A minha situação é a seguinte: minhas tabelas e os valores: TB_PEDIDO: int id_pedido 40 TB_ITEM_PEDIDO: int id_pedido, quantidade_pedida, quantidade_recebida, id_item 40 30 0 1234 tb_lote: int id_pedido, id_item, quantidade_lote 40 1234 1 Eu posso encerrar um item no pedido de 2 formas: - Recebendo Pelo pedido mesmo.. na tabela do item na quantidade recebida - Recebendo pelo lote na quantidade lote Nesse Caso os dados Corretos são: Unidade 2: quantidade pendente 0 (pois a quantidade recebida em lote para o pedido supera a pedida) Porem no Meu Select Esta Trazendo 29. O problema esta no select que traz a quantidade pendente em itens que tem dados no lote. Segue o Select: ============================================================================================================== SELECT I.ID_PRODU_REFER, SUM(case I.QT_PEDIDO - ITL.QT_ITEM - I.QT_ATEND_INFORM < 0 when true then 0 else I.QT_PEDIDO - ITL.QT_ITEM - I.QT_ATEND_INFORM end) as qt_pendente_com_lote /* O PROBLEMA É NESTA SOMA QUE TRAZ A QUANTIDADE PENDENTE DOS ITENS QUE TEM RELACAO NO LOTE DE ENTRADA, QT_PENDENTE_COMPRA COM LOTE DEVERIA SER 0 POIS A CONTA SERIA: 30 - 61 - 0 = -31 (QUANDO NUMERO É NEGATIVO já DEIXO COMO 0) MAS ESSE SUM ESTA FUNCIONANDO ASSIM: 30 - 60 - 0 = -30 (AQUI FICA 0) E 30 - 1 - 0 = 29, NO RESULTADO FINAL = 0 + 29 => 29, OS LOTES ESTAO SENDO SOMADOS SEPARADOS E DEPOIS SOMA O RESULTADO, PRECISO QUE SOMA TODOS VALORES DA COLUNA PRIMEIRO, PARA DEPOIS FAZER A SUBTRAÇÃO */ FROM TB_PEDIDO_COMPRA AS P LEFT JOIN TB_ITEM_PEDIDO_COMPRA AS I ON I.ID_PEDIDO_COMPRA = P.ID_PEDIDO_COMPRA LEFT JOIN TB_ITEM_LOTE_ENTR AS ITL ON ITL.ID_PEDIDO_COMPRA = I.ID_PEDIDO_COMPRA AND ITL.ID_PRODU_REFER = I.ID_PRODU_REFER LEFT JOIN TB_PRODU_REFER AS PR ON PR.ID_PRODU_REFER = 4105 WHERE i.ID_PRODU_REFER = 4105 GROUP BY I.ID_PRODU_REFER ========================================================================================================
  4. Olá, alguém sabe como eu faço para fazer a ordenação de uma lista encadeada por bubble sort ? // minha lista typedef struct node{ int info; struct node *next; }NODE, *NODEPTR; como ficaria a função bubble sort para odenação dessa lista ? Obrigado abraços
  5. Olá amigos, Meu problema é o seguinte: eu tenho uma variavel char valendo um expressão numerica tipo: ((a + c) * x) como eu faço para ler essa variavel e resolver a operação considerando os parenteses tudo certinho.. ... Obrigado
  6. inavoig.17

    Help Vetores

    Olá amigos, estou com 2 exercicios da facul aqui, mas estou tendo uma dificuldade pra fazer.. alguém sabe como fazer : 4. Escreva uma função que recebe um vetor V de n números inteiros e inverte a ordem dos elementos do vetor no mesmo vetor. Exemplo: V = { 4, 9, 10, 8, 6} o vetor V invertido é {6, 8, 10, 9, 4} 5. Escreva uma função que recebe um vetor V de n números inteiros, um elemento chave x e uma posição e insere o elemento na posição dada no vetor. não pode usar comando avançados.. tipo libs prontas.. etc tem q ser por for, while.. etc... quem puder ajudar ai.. fico grato abs
  7. inavoig.17

    Configuração PHP

    Olá Amigos, Muito Obrigado pelas dicas. Então resolvi meu problema instalando o VertrigoServ. O programa funciona bem, já tem php, apache e SQL e é bem fácil de usar. Obrigado a todos. Abraços
  8. inavoig.17

    Configuração PHP

    Olá amigos boa tarde, Estou tentando configurar o PHP aqui na minha máquina, já instalei o apache tudo certo. Ai começo a instalação do php normalmente, quando chega na parte de selecionar o server. Ele não aparece o apache. as unicas opções que aparecem são: IIS FastCgi, Other CGI e Do Not Setup WebServer. Minha versão do apache é a 2.2 php tentei instalar as versões 5.3.4 e 5.3.1 Se alguém puder me ajudar ficarei grato. Obrigado abraços
  9. Deu certo.. \o/ Obrigado o código ficou assim: Parte Html: <input type="submit" value="Excluir" name="exclude" id="exclude"/> Parte php if($exclude) $sql = mysql_query("DELETE FROM matrix WHERE codref = '$view_cod'"); if($sql){ echo 'removeu'; }else{ echo 'erro'; } } Obrigado.. abraços
  10. Ola amigos, Tenho um site aqui, estou fazendo a parte de manutenção e gostaria de fazer a parte para exclusao de dados do BD(Sql). Tenho uma tabela chamada "matrix" que contem os campos [codref, titulo, familia, dados, status, preço, end]. cad produto tem seu proprio codref. O que eu gostaria de fazer é o seguinte: $cod_ref = codref no bd. - Ex: Quando eu to na pagina do produto $cod_ref=0001. ai vai vai ter um botao chamado "excluir item". quando clicar nesse botao, ele exclui os dados referentes ao codref: 0001. alguém poderia me ajudar com isso ? Obrigado Abraços
  11. já Consegui.. não precisa mais.. / Caso alguém queira saber o que eu alteirei: bastava alterar essa linha do código: a variavel que eu deveria atribuir no valor da imagem era a {$iner.codref} e não a {$page_fotos_zoom.zoom11}, agora está carregando a imagem certinho. <img src="dynamic/zoom/{$iner.codref}01.jpg" width="80" height="80" border="0" align="center" class="transparencia"> Abraços
  12. Olá amigos, estou fazendo um site aqui. ele tem um menu que abre as galerias cada galeria tem seu código. vou tentar explicar mais ou menos como funciona o q estou querendo fazer Links do site: Link 1 (quando eu clicar $type = a) Link 2 (quando eu clicar $type = B) Link 3 (quando eu clicar $type = c) *Quando eu abro o site ele me abre a página home, com a variavel $type = a (por Default) dentro da $type=a, tenho uma matriz com todas os produtos tipo "a", cada produto desse tem seu código($codref). Ex: prod1=$codref = 100, prod2=$codref = 101 * ai eu escolho que quero abrir o prod1. quando clico, ele abre a galeria com a matrix do prod1. onde contem as imagens do produto Obs: $view_cod = $codref Bom agora vamos ao meu problema: quando eu abro uma galeria tudo bem.. ele carrega as imagens tudo normal. só que nas páginas antes de entrar na galeria, quando a variavel view_cod ainda não tem nenhum valor nela, eu não consigo puxar a imagem, tipo a primeira imagem de exibição. pois eu uso a variavel do CodRef para pegar cada imagem, tem como eu setar esse valor na imagem para já puxar o valor que ela vai ter quando clicar, o valor da sua galeria (o valor que esta no <a href>) ? Não sei se eu fui muito claro. pra tentar ajudar: da uma olhada no site... na pagina inicial ele já tem 3 itens cadastrados... repare que quando você entra nas galerias ele tem as imagens da galeria normal.. mas pode ver tb q ele não carrega a primeira imagem (a de exibição).. é isso que eu quero fazer. http://www.primecorretores.com.br/ Parte onde eu crio a matriz de imagens <table border="0" width="100%"> {foreach key=key item=item from=$mx_produtos} <tr> {foreach key=key_iner item=iner from=$item} <td class="font_default"><br><br> {if $iner.codref neq ""} <center> <a href="index.php?menu=3&view_cod={$iner.codref}"> <img src="dynamic/zoom/{$codref}" width="80" height="80" border="0" align="center" class="transparencia"> </a> <br> <b><font color="#000000">{$iner.titulo}</font></b><br/> <font color="#000000" size="1">Imagem ilustrativa</font> </center> {/if} </td> {/foreach} </tr> {/foreach} </table> Parte HTML, onde pucha as imagens da matriz <table border="0" width="100%"> <form name="form_detalhes" action="index.php" method="getch"> <input type="hidden" name="menu" value="3"> <input type="hidden" name="add[cod]" value="{$page.codref}"> <table border="0" class="det_prod"> <tr> <td style="font-weight:bold;" valign="top"> <img src="dynamic/zoom/{$page_fotos_zoom.zoom11}" class="transparencia" width="80" height="80"/> </td> <td style="font-weight:bold;" align="left"> Código de Referência: {$page.codref}<br /> Título: {$page.titulo}<br /> Preço: {$page.preço}<br /> Área: {$page.area}<br /> Endereço: {$page.end}<br /> Detalhes Adicionais: {$page.dados}<br /> </td> </tr> </table> <table border="0" class="det_prod" cellspacing="05"> <tr> <td width="80px" height="80px"> {if $page_fotos_zoom.zoom13 eq ''} {else} <a href="dynamic/zoom/{$page_fotos_zoom.zoom11}" rel="lightbox"> <img src="dynamic/zoom/{$page_fotos_zoom.zoom11}" width="80" height="80"/> </a> {/if} </td> <td width="80px" height="80px"> {if $page_fotos_zoom.zoom13 eq ''} {else} <a href="dynamic/zoom/{$page_fotos_zoom.zoom12}" rel="lightbox"> <img src="dynamic/zoom/{$page_fotos_zoom.zoom12}" width="80" height="80"/> </a> {/if} </td> <td width="80px" height="80px"> {if $page_fotos_zoom.zoom13 eq ''} {else} <a href="dynamic/zoom/{$page_fotos_zoom.zoom13}" rel="lightbox"> <img src="dynamic/zoom/{$page_fotos_zoom.zoom13}" width="80" height="80"/> </a> {/if} </td> </tr> </table> Obrigado abraços
  13. Opa era isso mesmo.. mas consegui resolver o problema: o for ficou assim: for ($y = 0; $y <= 12; $y++) { $imagem_nome = sprintf('%04d%02d.jpg', $view_cod, $y); if (!is_file($imagem_dir.$imagem_nome)) { break; } } if ($y == 13) { echo 'Erro: já foram enviadas 12 imagens'; exit(1); } if (move_uploaded_file($arquivo["tmp_name"], $imagem_dir.$imagem_nome)) { echo "Sua foto foi enviada com sucesso!"; } Obrigado Toze e Eserra abraço t+
  14. O $view_cod eu crio em outra página.. com ele esta tudo Ok.. ele é adicionado no nome da imagem... o problema é o complemento (a $nome_imagem).. que é para adiciona o $view_cod + 1
  15. é realmente não havia nassecidade dos dois laços. mas mesmo com o laço assim: $imagem_dir = "../../../../dynamic/mini/"; for($y=0; $y<=12; $y++){ $imagem_nome = $view_cod . $y . ".jpg"; move_uploaded_file($arquivo["tmp_name"], $imagem_dir.$imagem_nome); } Continua salvando sempre com o mesmo nome. "$view_cod + 0.jpg " tem alguma variavel errada, faltando algum comando, ou sobrando. rs Obrigado abraços
×
×
  • Criar Novo...