Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Rotina Automática de Desmontagem de Produtos

Descrição:

Esta rotina possibilita Possibilita a realização das transferências múltiplas, ou seja, transferências de um único produto para vários produtos, através do mecanismo de rotina automática.

Produto:

Microsiga Protheus

Segmento:Serviços
Módulo:SIGAEST - Estoque/custos
Rotina:
RotinaNome Técnico
MATA242.PRX Desmontagem de produto
País(es):Todos
Banco(s) de Dados:Todos Homologados pela TOTVS
Tabelas Utilizadas:SD3 - Movimentações Internas
Parâmetros:
NomeTipoDescriçãoObrigatório
aCabecArray of RecordCabeçalhoX
aItensArray of RecordItensX
nOpcnumericOpção :3=Incluir 4=Alterar 5=EstornarX

Observações:

Observação: Alguns campos da tabela SD3 recebem o tratamento via dicionario de dados (SX3) ao qual permite ser utilizado somente por alguns módulos (X3_USADO ex: ). Por exemplo, o campo D3_RATEIO (% Rateio).
Para esses casos é necessário executar a preparação do ambiente passando a opção módulo ativa.

Exemplo: PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" Modulo "EST" tables "SB1", "SD3"

Exemplo


Bloco de código
languageactionscript3
linenumberstrue
#include 'protheus.ch'


#include 'parmtype.ch'


#include "tbiconn.ch"
user function


User Function myMATA242()



Local aAutoCab := {}


Local aAutoItens := {}



Private lMsErroAuto := .F.



PREPARE ENVIRONMENT EMPRESA "T1" FILIAL "D MG 01" Modulo "EST" tables "SB1", "SD3"



aAutoCab := {   {"cProduto" , Pad("02 ", Len(SD3-
>D3
>D3_COD))     , Nil},;


                  {"cLocOrig" , "01"                 , Nil},;


                  {"nQtdOrig" , 100                  , Nil},;           


                  {"nQtdOrigSe" , CriaVar("D3_QTSEGUM")        , Nil},;           


                  {"cDocumento" , Pad("000000002", Len(SD3-
>D3
>D3_DOC)) , Nil},;          


                  {"cNumLote" , CriaVar("D3_NUMLOTE")        , Nil},;           


                  {"cLoteDigi" , CriaVar("D3_LOTECTL")        , Nil},;           


                  {"dDtValid" , CriaVar("D3_DTVALID")        , Nil},;           


                  {"nPotencia" , CriaVar("D3_POTENCI")        , Nil},;           


                  {"cLocaliza" , CriaVar("D3_LOCALIZ")        , Nil},;           


                  {"cNumSerie" , CriaVar("D3_NUMSERI")        , Nil}}

                 
                 
aAutoItens

                  
aAutoItens := {{    {"D3_COD" , Pad("03 ", Len(SD3-
>D3
>D3_COD)) , Nil}, ;


                        {"D3_LOCAL" , "01"                         , Nil}, ;           


                        {"D3_QUANT" ,
1                            
 1                            , Nil}, ;           


                        {"D3_QTSEGUM",                          , Nil}, ;           


                        {"D3_RATEIO" , 20                           , Nil}},;                   

 
                     {  {"D3_COD" , Pad("04 ", Len(SD3-
>D3
>D3_COD)) , Nil}, ;           


                        {"D3_LOCAL" , "01"                         , Nil}, ;           


                        {"D3_QUANT" ,
24                           
 24                           , Nil}, ;           


                        {"D3_QTSEGUM",                          , Nil}, ;           


                        {"D3_RATEIO" , 80                           , Nil}}}

                        
                        

                       
//inclusão                      


MSExecAuto({|v,x,y,z| Mata242(v,x,y,z)},aAutoCab,aAutoItens,3,.T.)

 

If lMsErroAuto  

    Mostraerro

    Mostraerro()


EndIf



Alert("Inclusao Ok. Verifique arquivos e continue para estorno")



Return