Árvore de páginas

Versões comparadas

Chave

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

...

Portuguese

Pagetitle
M160STRU - Acrescenta Campos no arquivo temporário
M160STRU - Acrescenta Campos no arquivo temporário

Ponto-de-Entrada: M160STRU - Acrescenta Campos no arquivo temporário


Versões:Microsiga Protheus 10
Compatível Países:Todos
Sistemas Operacionais:Todos
Compatível às Bases de Dados:Todos
Idiomas:Espanhol , Inglês


Descrição:
O Ponto de Entrada M160STRU acrescenta campos no arquivo temporário.  Por meio deste ponto, o M160PLAN acrescenta o conteúdo dos campos dentro do array de dados da planilha da cotação.
Eventos

LOCALIZAÇÃO   : Function MaMontaCot() responsável pela montagem dos dados para análise da cotação.


 EM QUE PONTO : O ponto se encontra após a montagem da estrutura do arquivo temporário a ser criado. Os PEs M160STRU e M160PLAN são usados em conjunto para manipulaçao do arquivo temporário e do array com os dados da planilha de cotação.
 

 


Programa Fonte
MATA160.PRW
Sintaxe

M160STRU - Acrescenta Campos no arquivo temporário ( < aStru> , < aCabec> , < aCpoSC8> ) --> aRet

Parâmetros:



Nome

Tipo

Descrição

Default

Obrigatório

Referência

aStru

Array of Record

Estrutura do arquivo temporário




X




aCabec

Array of Record

Estrutura do cabeçalho das planilhas




X




aCpoSC8

Array of Record

Array contendo os campos das planilhas




X




Retorno
aRet
    (vetor)
  • É esperado como retorno um vetor com tres dimensões onde:aRet[1]=Array com os campos existentes mais os específicos incluídos. aRet[2]=Array com os títulos dos campos existentes mais os específicos incluídos. aRet[3]=Array com os campos manipulados
Observações

ATENÇÃO : Deve-se apenas incluir campos da SC8 (Cotação) na análise e nunca excluir os já existentes, pois pode comprometer o funcionamento da rotina.

Exemplos

User

Function M160STRULocal aStr

Function M160STRU
Local aStr :=

PARAMIXB[1]
Local

aCabec

:=

PARAMIXB[2]
Local

aCpoSC8

:=

PARAMIXB[3]
Local

nPos

:=

aScan(aCpoSC8,"PLN_FORNEC")

If nPos > 0 //Adiciona campo no array contendo os configuracoes do campo "PLN_FORNEC" aAdd(aStr,aStr[nPos]) aAdd(aCabec,aCabec[nPos]) aAdd(aCpoSC8,aCpoSC8[nPos]) //Exclui campo "PLN_FORNEC" da posicao antiga aDel(aStr,nPos) aDel(aCabec,nPos) aDel(aCpoSC8,nPos) //Ajusta tamanho do array aSize(aStr,len(aStr)-1) aSize(aCabec,len(aCabec)-1) aSize(aCpoSC8,len(aCpoSC8)-1) //Inclui campo C8_TESTE na analise da cotacao quando disponivel


//Inclui campo C8_TESTE na analise da cotacao quando disponivel 
dbSelectArea("SX3")

 
SX3->(dbSetOrder(2))

If

 
If SX3->(dbSeek("C8_TESTE"

) aadd

))  
 aadd(aStr,{"C8_TESTE",SX3->X3_TIPO,SX3->X3_TAMANHO,SX3->X3_DECIMAL})

aadd

  
 aadd(aCabec,{"C8_TESTE","",RetTitle("C8_TESTE"),PesqPict("SC8","C8_TESTE")})

aAdd

  
 aAdd(aCpoSC8,"C8_TESTE")

EndIfEndIfReturn

 
EndIf
Return {aStr,aCabec,aCpoSC8}