Jump to content


anderson farias

Member Since 09/04/2008
Offline Last Active 18/07/2010, 22:41
-----

Topics I've Started

Inner Join Sem Repetir Campos

17/07/2010, 00:10

Olá Pessoal ,

Estou com uma grande dificuldade em uma consulta, é o seguinte:

Tenho as tabelas:

Pedido
Campos: id | codigo_venda | cliente | Valor_total | ...
Descrição: Tabela que guarda o pedido com valor total da venda para fins financeiro


Venda
Campos: id | codigo_venda | cliente | produto | un_medida | preco_unitario | qtd | ...
Descrição: Tabela que guarda informações dos prdutos da venda para fins de detalhamento.

Cliente
Campos: id | nome | endereço | …
Descrição: Tabela que armazena os dados do cliente


Na minha aplicação(em php) tem uma parte que o cliente poderá selecionar mais de um pedido, na busca tenho que trazer a seguinte informação:

- O nome do produto não pode se repetir
- A quantidade dos produtos iguais precisa ser somado
- Caso o produto igual tenha valores diferentes deve-se aplicar a média ponderada do preço unitário



Tentei isso, sei q não é o ideal mais pelo menos estou me esforçando para apreender a trabalhar com novas consultas.

SELECT pedido_nf2.id,pedido_nf2.codigo_venda,pedido_nf2.cliente,pedido_nf2.data_emissao,pedido_nf2.data_saida,
		pedido_nf2.hora_saida,pedido_nf2.valor_total,venda.codigo_venda,venda.produto,venda.qtd,
		venda.preco_unitario,venda.un_medida,un_medida.id,un_medida.nome 
		FROM pedido_nf2 INNER JOIN venda on pedido_nf2.id = $pedido AND pedido_nf2.codigo_venda=venda.codigo_venda AND venda.fornecedor='$cliente' INNER JOIN un_medida        ON un_medida.id=venda.un_medida

Aplicação em PHP com Mysql
A variável $pedido acima é um vetor que contem o numero dos pedidos e esta dentro do laço de repetição. A consulta é realizada com sucesse mais lista todos os produtos repetidos, utilizei o DISTINCT mais não tive exito.


Alguém poderia me ajudar com essa tarefa?

Observações
Sinceramenta tenho conhecimento interemediário em Banco de Dados, no qual na maioria dos sistemas que crio é necessário instruções básicas de Insert, Delete, Select, Inner Join(Básica) e Update.
Agora surgiu essa pesquisa que esta sendo bom, pois estou pesquisando bastante e apredendo novas coisas, apenas nessa parte que estou com tal dificuldade.


Muito Grato pela atenção ,


Anderson Farias

Calcular Intervalo De Datas

08/02/2010, 14:11

Olá pessoal ,

Na minha aplicação tenho três dados de entrada:
Data de entrada:
Data de Saída:
Quantidade de dias:

Gostaria de saber como faço para quando eu terminar de digitar a Data de Entrada e Data de Saída automaticamente seja inserido os numeros de dias relacionado ao intervalo no campo Quantidade de Dias.

Código sem implentação:
<tr>
<td width="160">Data Entrada<br />
<input type="text" name="data_entrada" size="10"/>
</td>

<td width="160">Data Saída<br />
<input type="text" name="data_saida" size="10" />
</td>

<td width="100">Qtd. Dias<br />
<input type="text" name="qtd_dias" size="5" maxlength="10"  />
</td>


Grato pela atenção ,

Desabilitar Campo

26/01/2010, 15:16

Olá pessoal,

Em minha aplicação tem uma parte que preciso cadastrar notas de alunos, conforme layout abaixo:
Posted Image


<?php
$sql = "SELECT * FROM disciplinas WHERE curso = '$curso' AND situacao = 'ATIVO'";
$query = mysql_query($sql);
while($linha=mysql_fetch_array($query))
{
?>
<tr>

<td width="150">
<?php

$disciplina = $linha['nome']; //nome das disciplinas
$nota_aprova = $linha['nota_aprova']; //nota mínima para Aprovação

echo "<input type='text' name='disciplinas[]' value=$disciplina disabled='disabled'/>"; //imprime as disciplinas	 
echo "<input type='hidden' name='disciplinas[]' value=$disciplina />";	  
?>



</td>
<td width="100">
<input type="text" name="nota[]" id="nota1[]" size="5" onkeyup="hab2();" /><!-- Campo Nota -->
</td>

<td width="100">
<input type="text" name="recupe[]" id="recupe[]" size="5"/><!-- Campo Recuperação -->
</td>

<td width="100">

<!-- Campo nota mínima para Recuperação, que vem do Banco de dados -->
<?php echo "<input type='text' name='' size='5' value=$nota_aprova disabled='disabled'/>" ;?>	
</td>

</tr>

<tr>

<?php
} //Final do while
?> 
   
</table>
   

As disciplinas e Nota Minima para aprovação vêm do banco de dados.

Queria saber como faço para quando o usuário digitar em Nota um valor menor que a Nota Mínima de Aprovação o campo Recuperação fica-se habilitado?





Tenho até uma função em javascript que pesquisei, mas só pega no primeiro campo e com valores estáticos.
<script>
 
 
 function hab(){
        
        nota = document.getElementById("nota1[]");
        recuperacao = document.getElementById("recupe[]");
        
                if(parseInt(nota.value) < 5){
                        recuperacao.disabled="";
                        return false;
                }else{
                        recuperacao.disabled="disabled";
                        return false;
                }
        
        }
		
</script>

<input type="text" name="nota[]" id="nota1" size="5" onkeyup="hab();" />
<input type="text" name="recupe[]" id="recupe" size="5"/>

Grato pela atenção ,

Anderson Farias

Problema Com Variável

08/01/2010, 14:50

Olá Pessoal ,

Tenho três campo checkbox conforme código abaixo:

<input type="checkbox" name="habilitacao[]" value="A"/>A <input type="checkbox" name="habilitacao[]" value="B"/>B 
<input type="checkbox" name="habilitacao[]" value="D"/>D

e recupero os valores com o seguinte código

$tipo_habi = implode(",", $_POST['habilitacao']);

Quando o usuário seleciona uma ou mais opções do checkbox insere certinho no banco, mas se caso o mesmo não for selecionado aparece um mensagem de erro Notice: Undefined variable:(mas insere no banco).

Gostaria de saber como faço para evitar a mensagem de erro

Abraços ,

Anderson Farias

Interação Entre Campos Select E Text

03/01/2010, 23:55

Olá Pessoal ,

Na minha aplicação tenho um select que lista informações do banco (conforme código abaixo), gostaria de quando o usuário escolhece uma das opções automaticamente no campo posterior tipo text aparecesse as quatro primeiras letras referente ao select selecionado.

<select name="curso">
<?php
$query = "SELECT * FROM cursos ORDER BY nome_curso";
$resultado = mysql_query($query);
  while($linha=mysql_fetch_array($resultado))
   {
      echo "<option value='".$linha['nome_curso']."'>".$linha['nome_curso']."</option>";
   }
?>
   </select>

Turma:
<input type="text" name="turma" size="10" />


Muito grato pela atenção e gostaria de informar que o fórum me ajudou bastante nos últimos dias,obrigado.

IPB Skin By Virteq