Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/327912/newLayout.css

...

Pagetitle
CTBPRXDOC -

...

Control de la numeración
CTBPRXDOC -

...

...

Control de la numeración

Función: CTBPRXDOC -

...

Control de la numeración

El punto de entrada CTBPRXDOC 

...

se 

...

utiliza para el 

...

control 

...

de 

...

la 

...

numeración 

...

del documento 

...

contable en el entorno Contabilidad de gestión (SIGACTB). 

...

Sintaxis

CTBPRXDOC -

...

Control de la numeración ( < dDataLanc>, < cLote>, < cSubLote> ) --> cDoc

...

Parámetros/Elementos

 

...

Nombre

Tipo

...

Descripción

...

Obligatorio

...

Referencia

dDataLanc

...

Fecha

Fecha del asiento

X

 

cLote

...

Carácter

...

Código del lote del asiento

X

 

cSubLote

...

Carácter

Código del sublote

...

X

 

 

...

Devolución

cDoc

    ()

...

código do documento gerado pelo ponto de entrada

 

Observaciones


El control de la numeración del documento contable en el entorno Contabilidad de gestión (SIGACTB) se realiza de forma secuencial y diaria, respetando la siguiente clave: FECHA

...

+LOTE+SUBLOTE+DOC,

...

es decir:

 

...


En una determinada fecha, para

...

un lote

...

y sublote específicos, todo

...

nuevo documento será

...

secuencial con relación al documento anteriormente utilizado.

...

En cada

...

cambio de

...

 

Resumindo:

 

fecha, la numeración del documento se reiniciará en “000001”


Resumiendo:


Cada combinación de fecha

...

+ lote + sublote

...

contable tendrá un conjunto de documentos

...

contables secuenciales.

 

 



...

Esta es la principal diferencia estructural entre los entornos Contabilidad de gestión (SIGACTB) y Contabilidad(SIGACON), pues en el entorno Contabilidad(SIGACON) era

...

posible a partir

...

del parámetro MV_CTBLOTE definir

...

el control de la numeración secuencial del documento por día o por mes.


El control de la secuencia de número de documento en el entorno Contabilidad de gestión (SIGACTB) se basa en las informaciones registradas en la tabla CTF con base en las informaciones del asiento contable (Fecha, Lote y Sublote). Este control es fijo dentro del entorno y mantiene integras las informaciones generadas para el registro.

Para configurar el control de la numeración secuencial del entorno Contabilidad de gestión (SIGACTB) para utilizar una regla diferente de pago diario debe utilizarse el punto de entrada CTBPRXDOC, siendo que su mala utilización ocasionará daños/inconsistencias en la base de datos del cliente. Como por ejemplo violación de clave primaria y pérdida de trazabilidad siendo pertinencia del desarrollador del punto de entrada la prevención de estos efectos. 


Ejemplos

A continuación un ejemplo que implementa numeración secuencial en el mes, para entornos TOP/MSSQL:USER FUNCTION CTBPRXDOC()Local aArea        := GetArea()Local cProxDoc                 := "000001"Local dDataLanc := PARAMIXB[1]Local cLote                         := PARAMIXB[2]Local cSubLote  := PARAMIXB[3]Local cQuery      := ""Local dDataIni   := CTOD("")Local dDataFim                 := CTOD("")    dDataIni := FIRSTDAY(dDataLanc)dDataFim := LASTDAY(dDataLanc)cQuery := "SELECT Max(CTF_DOC) MAXDOC "cQuery += "FROM

Para configurar o controle da numeração seqüencial do ambiente Contabilidade Gerencial (SIGACTB) para utilizar uma regra diferente de diária deverá ser utilizado o ponto de entrada CTBPRXDOC, sendo que a sua má utilização irá acarretar em estragos/inconsistências na base de dados do cliente. Como por exemplo violação de chave primaria e perca de rastreabilidade sendo da alçada do desenvolvedor do ponto de entrada a prevenção desses efeitos. 

 

...

"+RetSqlName("CTF")+"

...

CT2

...

WHERE

...

"cQuery

...

+=

...

"CTF_DATA

...

BETWEEN

...

'"+DTOS(dDataIni)+"'

...

AND

...

'"+DTOS(dDataFim)+"'

...

AND

...

"cQuery

...

+=

...

"CTF_LOTE

...

=

...

'"+cLote+"'

...

AND

...

"cQuery

...

+=

...

"CTF_SBLOTE

...

=

...

'"+cSubLote+"'

...

AND

...

"cQuery

...

+=

...

"D_E_L_E_T_='

...

'

...

"cQuery

...

:=

...

ChangeQuery(cQuery)dbUseArea(.T.,"TOPCONN",TcGenQry(,,cQuery),"TMPPRXDOC")cProxDoc

...

:=

...

STRZERO(VAL(("TMPPRXDOC")->MAXDOC),6)dbSelectArea("TMPPRXDOC")("TMPPRXDOC")->(dbCloseArea())cProxDoc

...

:=

...

SOMA1(cProxDoc)RestArea(aArea)RETURN

...

cProxDoc

...

Alcance 

Microsiga Protheus 8.11 , Protheus 10

...