Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
jhonatanvaz Novato

Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 24
|
Enviada: Ter Jan 28, 2014 8:18 am Assunto: Delhphi Formulários. |
|
|
Olá,
Preciso muito da ajuda de vocês,
Tenho uma grid onde constam os pedidos que estão prontos para serem liberados, tenho um botão ' Liberar'...
Queria fazer alguma função ou condição que ao clicar nele ele faça esse case para min.:
-- CASE WHEN (ESTOQUE_MINIMO + QTD_VENDIDA)> SALDO_ATUAL THEN
'GERAR ORDEM DE PRODUÇÃO'
ELSE
'NÃO GERAR ORDEM DE PRODUÇÃO'
END ORDEM_STATUS --
(ESTOQUE_MINIMO e SALDO_ATUAL estão na tabela PRODUTOS)
(QTD_VENDIDA esta na tabela PEDIDOS_VENDAS)
Ai caso tenha que 'Gerar Ordem de Produção' ele ira chamar o formulário de cadastro de ordens.
Caso ele 'Não gerar Ordem de Produção' ele ira chamar o formulário de 'Faturamento_pedido'
Obrigado desde já ! |
|
Voltar ao Topo |
|
 |
Jonatan500 Colaborador

Registrado: Sábado, 8 de Janeiro de 2011 Mensagens: 1064 Localização: Palmas/TO
|
Enviada: Ter Jan 28, 2014 8:57 am Assunto: |
|
|
se voce usa firebird, tem um componente chamado IbScript, voce pode executar comandos no banco de dados atravez dele.. (Falei sobre o IB pois nn tinha entendido a duvida...) _________________ "NESCIS QUIA EGO SUM PROGRAMMATOR"
#DelphiPower
Editado pela última vez por Jonatan500 em Ter Jan 28, 2014 10:14 am, num total de 1 vez |
|
Voltar ao Topo |
|
 |
jhonatanvaz Novato

Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 24
|
Enviada: Ter Jan 28, 2014 9:02 am Assunto: |
|
|
Desculpa esqueçi de informar o banco de dados: Firebird.
Você teria algum exemplo sobre este componente para me auxiliar na minha pesquisa. Ou ate mesmo o comando para executar ele e colocar o comando para efetuar a condição?
Obrigado =D |
|
Voltar ao Topo |
|
 |
Jonatan500 Colaborador

Registrado: Sábado, 8 de Janeiro de 2011 Mensagens: 1064 Localização: Palmas/TO
|
Enviada: Ter Jan 28, 2014 10:01 am Assunto: |
|
|
Código: | var
Soma:String;
begin
Soma:= floattostr(strtofloat(ESTOQUE_MINIMO) + strtofloat(QTD_VENDIDA));
if StrToFloat(Soma) > StrtoFloat(SALDO_ATUAL ) then
begin
Showmessage(' Soma Maior que saldo' );
end;
end;
|
amigo, mais ou menos assim.. _________________ "NESCIS QUIA EGO SUM PROGRAMMATOR"
#DelphiPower |
|
Voltar ao Topo |
|
 |
jhonatanvaz Novato

Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 24
|
Enviada: Ter Jan 28, 2014 10:10 am Assunto: |
|
|
Entendi , só que o campo estoque_minimo e qtd_vendida e saldo_atual, são campos do banco de dados de uma tabela. Ai eu não estou conseguindo fazer por exemplo:
Clico sobre uma linha da grid e clico em liberar, ao clicar preciso que ele faça aquela função ali (estoque_minimo + qtd_vendida)> saldo_atual chamar form ordem de produção. Porem esses campos estoque_minimo e saldo_atual são trazidos de uma tabela do banco de dados e não consta na grid. Só consta na grid a qtd_vendida. Conseguiu entender oque eu me referi?
Obrigado... |
|
Voltar ao Topo |
|
 |
Jonatan500 Colaborador

Registrado: Sábado, 8 de Janeiro de 2011 Mensagens: 1064 Localização: Palmas/TO
|
Enviada: Ter Jan 28, 2014 10:13 am Assunto: |
|
|
Cara seria quase mesma coisa, me passa os campos do banco de dados me passa o nome da query me passa o tipo dos campos ai por favor _________________ "NESCIS QUIA EGO SUM PROGRAMMATOR"
#DelphiPower |
|
Voltar ao Topo |
|
 |
jhonatanvaz Novato

Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 24
|
Enviada: Ter Jan 28, 2014 10:37 am Assunto: |
|
|
Tabela : CADASTRO_PRODUTO
COD_PRODUTO (integer)
DESCRICAO (varchar)
ENTRADAS (integer)
SAIDAS (integer)
SALDO_ATUAL (integer)
ESTOQUE_MINIMO (integer)
ESTOQUE_MAXIMO (integer)
LEAD_TIME (integer)
LOTE_PRODUCAO (integer)
TIPO_PRODUTO (varchar)
PRECO_UNIT (float)
Tabela: PEDIDOS_VENDAS
COD_PEDIDO (integer)
DESCRICAO (varchar)
COD_PRODUTO (integer)
COD_ENTIDADE (integer)
DATA_ATUAL (date)
DATA_ENTREGA (date_
QTD (integer)
PRECO_UNIT (float)
PRECO_TOTAL (float)
Tabela : ORDEM_PRODUCAO
COD_ORDEM (integer)
COD_PRODUTO (integer)
DATA_ATUAL (date)
DATA_ENTREGA (date)
QTD (integer)
Na grid os dados são cadastrados referente a tabela PEDIDOS_VENDAS, ai ao clicar no botão liberar ele faz a consulta no CADASTRO_PRODUTOS e verfica(estoque_minimo + qtd_vendida)> saldo_atual .
Não usei Query ainda, usei o DataSource.
Obrigado cara , já já você vai conseguir me ajudar e muito !!! |
|
Voltar ao Topo |
|
 |
Jonatan500 Colaborador

Registrado: Sábado, 8 de Janeiro de 2011 Mensagens: 1064 Localização: Palmas/TO
|
Enviada: Ter Jan 28, 2014 12:03 pm Assunto: |
|
|
Código: | var
Soma:String;
begin
Soma:= IntToStr(ESTOQUE_MINIMO) + IntToStr(QTD_VENDIDA);
if StrToInt(Soma) > SALDO_ATUAL then
begin
Showmessage(' Soma Maior que saldo' );
end; |
ESTOQUE_MININO você vai colocar o seu query e o nome do campo +- assim : DATASETESTOUE_MINIMO.Asinteger; e assim com os outros tambem
amigo e se seu campo SALDO_ATUAL for moeda o ideal seria usar float, abraços _________________ "NESCIS QUIA EGO SUM PROGRAMMATOR"
#DelphiPower |
|
Voltar ao Topo |
|
 |
Jonatan500 Colaborador

Registrado: Sábado, 8 de Janeiro de 2011 Mensagens: 1064 Localização: Palmas/TO
|
Enviada: Ter Jan 28, 2014 12:07 pm Assunto: |
|
|
pequenas Coreções do Código :
Código: | var
Soma:Integer;
begin
Soma:= ESTOQUE_MINIMO + QTD_VENDIDA;
if Soma > SALDO_ATUAL then
begin
Showmessage(' Soma Maior que saldo' );
end; |
_________________ "NESCIS QUIA EGO SUM PROGRAMMATOR"
#DelphiPower |
|
Voltar ao Topo |
|
 |
jhonatanvaz Novato

Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 24
|
Enviada: Ter Jan 28, 2014 12:26 pm Assunto: |
|
|
Certo, mas acho que me perdi no meio do caminho.
Poderia me passar um guia por exemplo:
Ex: oque colocar no evento click do botão liberar?
oque colocar no comandtext da query?
Muito Obrigado , ta me ajuda e muito !!! |
|
Voltar ao Topo |
|
 |
Jonatan500 Colaborador

Registrado: Sábado, 8 de Janeiro de 2011 Mensagens: 1064 Localização: Palmas/TO
|
Enviada: Ter Jan 28, 2014 4:55 pm Assunto: |
|
|
Amigão, ai você vai fazer tudo do jeito que quer seu sistema...., funcionou o código ? _________________ "NESCIS QUIA EGO SUM PROGRAMMATOR"
#DelphiPower |
|
Voltar ao Topo |
|
 |
jhonatanvaz Novato

Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 24
|
Enviada: Qua Jan 29, 2014 9:47 am Assunto: |
|
|
Olá, consegui sim amigo.
Agora tenho outra duvida, como eu consigo fazer a função somento com uma linha da Grid.
Por exemplo so com a linha que eu selecionar e clicar no botão, ai ele fazer a função e verificar. |
|
Voltar ao Topo |
|
 |
Jonatan500 Colaborador

Registrado: Sábado, 8 de Janeiro de 2011 Mensagens: 1064 Localização: Palmas/TO
|
Enviada: Qua Jan 29, 2014 10:32 am Assunto: |
|
|
se voce selecionar um produto no grid automaticamente ele ja estara selecionado no seu dataset.. _________________ "NESCIS QUIA EGO SUM PROGRAMMATOR"
#DelphiPower |
|
Voltar ao Topo |
|
 |
jhonatanvaz Novato

Registrado: Quinta-Feira, 24 de Outubro de 2013 Mensagens: 24
|
Enviada: Qua Jan 29, 2014 10:45 am Assunto: |
|
|
Acho que não pq aqui por exemplo eu seleciono a linha 10 e clico em liberar e eu comparando, olhando na grid ela não deveria aparecer a msg 'Gerar Ordem' e ela aparece, isso acontece pq a primeira linha da grid, passada pela função ela necessita que 'Gerar Ordem', no caso ele não esta reconhecendo a linha selecionada e assim fazendo a função somente com a primeira linha da GRID.
Como eu faço para se eu selecionar a linha 10 da Grid ele fazer a função para aquela linha? |
|
Voltar ao Topo |
|
 |
Jonatan500 Colaborador

Registrado: Sábado, 8 de Janeiro de 2011 Mensagens: 1064 Localização: Palmas/TO
|
Enviada: Qua Jan 29, 2014 4:14 pm Assunto: |
|
|
cara seguinte sempre que você precisar editar um registro que não for do grid ou algo do tipo, você executa uma consulta, se no caso o grid que você esta utilizando não e onde se encontra os campos que quer alterar você tem que pegar o ID do que vai querer alterar e pesquisar, ai você pode editar que vai funcionar certim _________________ "NESCIS QUIA EGO SUM PROGRAMMATOR"
#DelphiPower |
|
Voltar ao Topo |
|
 |
|