Versões comparadas

Chave

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

...

Portuguese

Pagetitle
CriaSXE - Controle de Numeração
CriaSXE - Controle de Numeração

Ponto-de-Entrada: CriaSXE - Controle de Numeração


Abrangências:Microsiga Protheus 10, Microsiga Protheus 11, Microsiga Protheus 12



Descrição:
Ponto de entrada para retornar o próximo número que deve ser utilizado na inicialização da numeração.
Programa Fonte
MATXATU.PRX
Sintaxe

CriaSXE - Controle de Numeração ( [ PARAMIXB ] ) --> cRet

Parâmetros:



Nome

Tipo

Descrição

Default

Obrigatório

Referência

PARAMIXB

Vetor

Vetor contendo as informações que poderão ser utilizadas pelo P.E.










Retorno
cRet
    (caracter)
  • Número que será utilizado pelo controle de numeração.
Observações
Este ponto de entrada é executado quando não existir uma numeração no SXE para o campo especificado.


Parâmetro PARAMIXB


Estrutura do parâmetro

  • [1] - cAlias - Nome da tabela;
  • [2] - cCpoSX8 - Nome do campo que será utilizado para verificar o próximo sequencial;
  • [3] - cAliasSX8 - Filial e nome da tabela na base de dados que será utilizada para verificar o sequencial;
  • [4] - nOrdSX8 - Índice de pesquisa a ser usada na tabela.
Exemplos
#include "protheus.ch"user function CRIASXE()Local cNum := NILLocal aArea := getarea()Local aArea2 := {}Local cAlias    := paramixb[1]Local cCpoSx8   := paramixb[2]Local cAliasSx8 := paramixb[3]Local nOrdSX8   := paramixb[4]Local cUsa := "SE1"  // colocar os alias que irão permitir a execução do P.E.if cAlias $ cUsa .and.  ! ( Empty(cAlias) .and. empty(cCpoSx8) .and. empty(cAliasSx8) )	qout(cAlias + "-" + cCpoSx8 + "-" + cAliasSx8 + "-" + str(nOrdSX8))	dbselectarea(cAlias)	aArea2 := getarea()	dbsetorder(nOrdSX8)	dbseek(xfilial()+"Z")	dbskip(-1)	cNum := &(cCpoSx8)	cnum := soma1(cNum)	// fazer o tratamento aqui para a numeracao	MsgGet2( "Indique o numero correto para a tabela:" + calias, "Campo:"+cCposx8, @cNum, , , )	restarea(aArea2)	restarea(aArea)endreturn cNum