Ajuda em rotina de atualização

Destinado ao auxílio e Troca de informações sobre a ferramenta Xmaker
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable
megafsem
Mensagens: 21
Registrado em: Janeiro 25th, 2011, 9:25 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Ajuda em rotina de atualização

Mensagempor megafsem » Junho 13th, 2011, 10:52 pm

Ola
Gustavo se possível gostaria de orientação para o problema abaixo:


Minha tabela de produtos contem 4(quatro) Tipos de produtos
1 ??? Venda
2 ??? Consumo
3 ??? Indústria
4 ??? Produtos Industrializados

Solicito orientação para a seguinte situação.
Gerar uma grade de produção.
Informações.
Vendo um produto e preciso gerar uma determinada grade para indústria fabricar.
Ex. a peça a1 do meu estoque de venda é composta de produtos industrializados e quero gerar uma tabela da grade que contem o seguinte formato abaixo:

GRADEPRO ??? TABELA DE GRADE
ECF_NUMERO ??? Numero da venda quem vem da capa do lote da venda.
CPPRO_CODIGO ??? Codigo do produto a ser industrializado
QUANTPROD ??? Quantidade a ser produzida

Portanto esse é o resultado que quero ter mas dependo de algumas informações abaixo.

ITVENDA ??? TABELA DE ITENS DE VENDAS
ECF_NUMERO ??? Numero da venda campo chave
IEC_SEQUENCIA Sequencia do item da venda campo chave
PRO_CODIGO ??? Produto vendido ??? Busca na tabela produtos o código.
PRO_QUANTIDADE ??? Quantidade Vendida
PRO_VENDA ??? Valor do Item
IEC_TOTAL ??? Total do Item em moeda

COMPPROD ??? TABELA DE COMPOSI????O DO PRODUTO ??? Capa do lote de composição do produto
PRO_CODIGO ??? Código do produto a ser industrializado ??? busca na tabela de produtos campo chave

ITECOMPPROD ??? TABELA DE ITENS DE COMPOSI????O DOS PRODUTOS
PRO_CODIGO ??? Código do produto = ao pai COMPPROD campo chave
CP_ITEM ??? Item seqüencial de auto incremento ??? campo chave
CPPRO_CODIGO ??? produtos que compoen o produto da venda
CP_QUANT ??? Quantidade que se deve fabricar para uma peça do produto

Preciso montar uma rotina em que quando vendo um produto ela leia a composição do mesmo localize o item que o compõem e monte a tabela GRADEPRO

Então tenho que na inclusão efetuar um lançamento no GRADEPRO caso ele não exista sendo que tenho que mandar os itens ECF_NUMERO da tabela ITVENDA ??? TABELA DE ITENS DE VENDAS e o CP_ITEM da tabela ITECOMPPROD ??? TABELA DE ITENS DE COMPOSI????O DOS PRODUTOS sei que tenho que pegar o item da tabela ITVENDA encontrá-lo na tabela COMPPROD e efetuar uma leitura no ITECOMPPROD para atualizar a GRADEPRO mas estou com dificuldades para montar, gostaria de uma orientação ou se existe uma forma de montar essa atualização por triggers, so for possível, aguardo respostas.
Tenho a versão anterior do Xmaker 6.0 e utilizo a versão do Delphi 6.0
Sou usuário desde 2005 e o xmaker me ajuda muito e parabéns pela nova versão

grato
Francisco Mendonça

Gustavo
Mensagens: 244
Registrado em: Dezembro 22nd, 2010, 1:05 am
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Re: Ajuda em rotina de atualização

Mensagempor Gustavo » Junho 14th, 2011, 10:10 am

Olá,
você pode fazer isso criando lançamento avulso.

Você deverá criar um filtro para tabela ITECOMPPROD.

TabGlobal.DITECOMPPROD.filtro.Clear;
tabGlobal.DITECOMPPROD.filtro.Add('ITECOMPPROD.PRO_CODIGO ='+floattostr(tabGlobal.DITECOMPPROD.PRO_CODIGO));
TabGlobal.DITECOMPPROD.AtualizaSql;
tabglobal.DITECOMPPROD.First;


E abaixo deve-se criar um Ptabela que irá pesquisar os itens na tabela de produtos e que compõe a tabela ITECOMPPROD.
Para cada item da tabela ITVENDA você deve fazer a programação abaixo(efetuar um loop).

try
while not tabglobal.DITECOMPPROD.Eof do
begin
if Ptabela(TabGlobal.DPRODUTO, ['PRO_CODIGO'], [tabglobal.DITECOMPPROD.PRO_CODIGO.Conteudo], ['CPPRO_CODIGO', 'CP_QUANT'],CamposResultado) then
begin
TabGlobal.DGRADEPRO.ECF_NUMERO.Conteudo:= Numero da venda quem vem da capa do lote da venda;
TabGlobal.DGRADEPRO.CPPRO_CODIGO.Conteudo:= CamposResultado[0];
TabGlobal.DGRADEPRO.QUANTPROD.Conteudo:= CamposResultado[1] * Quantidade Vendida (Tabela ITVENDA);
TabGlobal.DGRADEPRO.salva;
Screen.Cursor := crHourGlass;
end;
TabGlobal.DITECOMPPROD.next;
end;
except
showmessage('Erro de Leitura...');
end;


Ao meu ver acho que era isso que você quer fazer, qualquer dúvida volte a postar.
Att,

Gustavo Barreto
;)


[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/vendor/twig/twig/lib/Twig/Extension/Core.php on line 1236: count(): Parameter must be an array or an object that implements Countable

Voltar para “Xmaker”

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 77 visitantes