Surgiu uma necessidade de controlar o mesmo produto, mas em embalagens diferentes e preços diferentes aqui.
Resolvi da seguinte forma:
Criei um novo arquivo estqcompart.dbf com codcompart(código compartilhado) descricao e quantidade.
Adicionei F2 na entrada depois que lê o XML de entrada para pegar desse arquivo ao invés do arquivo do produto.(pq seriam vários, não dá certo)
No arquivo do produto(estoques) adicionei mais 2 campos codcompart(código compartilhado) e Qtd_baixar.
Ficaram 2 controles(gets) 1 da quantidade(embalagem) e outro da quantidade compartilhada.
São diversos produtos de isopor(quentinha) embalagens diversas, pizza, etc...
Tinham passado um modelo de software para colocar na menor quantidade, mas não iria dar ceto 100% iria bagunçar mais ainda as entradas.
Dessa forma que criei resolveu os 2 ou três problemas.
Ficou um problema para resolver de quantidades unidades de 10,30, 50, 200 no caso, que tem nas prateleiras, mas eu falei para ele que resolveria fazendo a baixar intermediaria... mas é tanto lançamento, que ele não quis (por enquanto fazer) A quantidade real e quantidade vendida de cada produto ele já tem, faltou a quantidade por embalagem, que a loja poderá fazer(caso queira).
Na baixa o código bem simples:
Código: Selecionar todos
if !empty(cCodCompart)
TravaRegistro('ec')
ec->quantidade -= (eq->qtd_baixar*pd->quantidade)
ec->(dbunlock())
endif Itamar M. Lins Jr.

