Punto de entrada: CTBSEQDIA - Efectúa la grabación en la tabla de origen del ítem para contabilizar en el Diario

Alcances:

Microsiga Protheus 10, Microsiga Protheus 11

Versiones:

Microsiga Protheus 10, Microsiga Protheus 11

Compatible países:

Todos

Sistemas operativos:

Todos

Compatible con las bases de datos:

Todas

Idiomas:

Portugués (Brasil)

Descripción:

Efectúa la grabación en la tabla de origen del ítem para contabilizar en el Diario

Eventos

Ocurre en la Función de grabación disparada del CTBGRAVA                  

Programa fuente

CTBXFUN.PRX

Sintaxis

CTBSEQDIA - Efectúa la grabación en la tabla de origen del ítem para contabilizar en el Diario ( [ aSeqDiario[nPosASeq] ], [ cCodDia ], [ cSeqDiario ] )

Parámetros:


Nombre



Tipo



Descripción



Estándar



Obligatorio



Referencia



aSeqDiario[nPosASeq]



Numérico



Número de secuencia del diario












cCodDia



carácter



Código del día












cSeqDiario



carácter



Secuencia del diario











Devolución
Nil (Nulo)

Ejemplos

	If lSeqCorr .And. Len( aSeqDiario ) > 0		// limpio la variable de secuencia para garantizar la integridad del diario		cSeqDiario 	:= cSeqCorr		cCodDia		:= Substr( cSeqCorr , 1 , 2 )		// efectúa la grabación en el documento de origen   For nPosASeq :=  1 to Len(aSeqDiario)			// buscar el código del diario(aSeqDiario[nPosASeq][2]) en la tabla CVL			// Y buscar el último número secuencial(CVM_SEQULT)+1 de acuerdo con el dDataLanc informado                             // Y actualizar el campo CVM_SEQULT e CVM_DTSEQ                        If aSeqDiario[nPosASeq][2] <> 0                                                   // efectúo la marcación del origen para actualización                                               dbSelectArea(aSeqDiario[nPosASeq][1])                                        dbGoTo(aSeqDiario[nPosASeq][2])                                                                                                                      // Graba solamente si existiera el registro y el código del correlativo estuviera en blanco                                           If !( (aSeqDiario[nPosASeq][1])->(Eof()) ) .And. Empty( &(aSeqDiario[nPosASeq][4]) )                                                      RecLock(aSeqDiario[nPosASeq][1],.F.)                                                      &(aSeqDiario[nPosASeq][4]) := cSeqDiario                                                                                                //Si el Registro fuera diferente de inclusión este grabará el campo CTBDIA                                                    If Len(aSeqDiario[nPosASeq]) == 5                                                            //Verifica si el campo está trayendo el nombre del campo para grabar el campo DIACTB.                                                                  If aSeqDiario[nPosASeq][5] <> ""                                                                          &(aSeqDiario[nPosASeq][5]) := cCodDia                                                               EndIf                                                 EndIf                                                                                                                                                           MsUnlock()                                                                                                              IF lCTBSEQDIA                                                                  ExecBlock("CTBSEQDIA",.F.,.F.,{aSeqDiario[nPosASeq],cCodDia,cSeqDiario})                                                        ENDIF                                                                                                         Endif                          EndIF