#Include "Protheus.ch"
#Include "FWMVCDEF.CH"
//-------------------------------------------------------------------
/*/{Protheus.doc} GPC100AUTO()
Função que efetua a inclusão de Analise de Mercado por Item.
@author TOTVS
@since 00/00/0000
@version 1.0
/*/
//-------------------------------------------------------------------
User Function GPC100AUTO()
Local oModel := FWLoadModel("GCPA100") //Carrega o modelo
Local cLogError := ""
oModel:SetOperation(MODEL_OPERATION_INSERT) //Seta operação de inclusão
oModel:Activate() //Ativa o Modelo
//Cabeçalho Análise de Mercado
oModel:SetValue( 'COM_MASTER' , 'COM_REGRA' , '002' )
oModel:SetValue( 'COM_MASTER' , 'COM_TIPO' , 'DR' )
//Produtos
oModel:SetValue( 'CON_DETAIL' , 'CON_CODPRO' , 'P000001' )
oModel:SetValue( 'CON_DETAIL' , 'CON_QUANT' , 100 )
oModel:SetValue( 'CON_DETAIL' , 'CON_VALEST' , 230 )
//Solicitações
oModel:LoadValue( 'COO_DETAIL' , 'COO_NUMSC' , 'PMS08M' )
oModel:LoadValue( 'COO_DETAIL' , 'COO_ITEMSC' , '001' )
oModel:LoadValue( 'COO_DETAIL' , 'COO_QUANT' , 100 )
//Fornecedores
oModel:SetValue( 'COP_DETAIL' , 'COP_TIPO' , '2' )
oModel:SetValue( 'COP_DETAIL' , 'COP_CODFOR' , '000005' )
oModel:SetValue( 'COP_DETAIL' , 'COP_PRCUN' , 230 )
oModel:GetModel('CON_DETAIL'):AddLine() //Adiciona uma nova linha para Produto
//Produtos
oModel:SetValue( 'CON_DETAIL' , 'CON_CODPRO' , 'P000002')
oModel:SetValue( 'CON_DETAIL' , 'CON_QUANT' , 50 )
oModel:SetValue( 'CON_DETAIL' , 'CON_VALEST' , 300 )
//Solicitações
oModel:LoadValue( 'COO_DETAIL' , 'COO_NUMSC' , 'PMS08M' )
oModel:LoadValue( 'COO_DETAIL' , 'COO_ITEMSC' , '002' )
oModel:LoadValue( 'COO_DETAIL' , 'COO_QUANT' , 50 )
//Fornecedores
oModel:SetValue( 'COP_DETAIL' , 'COP_TIPO' , '2' )
oModel:SetValue( 'COP_DETAIL' , 'COP_CODFOR' , '000005' )
oModel:SetValue( 'COP_DETAIL' , 'COP_PRCUN' , 300 )
//Validação e Gravação do Modelo
If oModel:VldData()
oModel:CommitData()
Else
aEval( oModel:GetErrorMessage(), { | x | cLogError += cValToChar( x ) + CRLF } )
Help( ,,"GCP101AUTO",,cLogError, 1, 0 )
EndIf
oModel:DeActivate() //Desativa o modelo
oModel:Destroy() //Destrói o modelo
Return
|