Versões comparadas

Chave

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

Especificación de Requisitos

 


Proyecto/Versión: MEX12.0/TOTVS Microsiga Protheus V12.0

Requisito/Módulo: 001511/SIGACTB

Sub-Requisito/Función: 151102/Mantenimiento de Funciones

Tarea/Llamado: 00000B.03.01

País: Todos

Fecha Especificación: 27/11/2013

Rutinas Involucradas

 

 



Rutina

Tipo de Operación

Opción de Menú

CTBA092 – Funciones

Creación

Actualizaciones->Archivos->Entes->Funciones

Estrategia de Desarrollo y liberación

 


Producto

Microsiga Protheus – Contabilidad

Reléase que está siendo desarrollado

11.90

Posee Réplica?

( )Si ( X)No

Cual versión?

No

aplica

aplic

...

Objetivo 


Crear la rutina que permita el registro de las funciones que serán utilizadas para el proceso de formulación delos Asientos Estándar.

Definición da Regla de

...

Negocio 

Al ingresar a la opción visualizara un browse con las funciones (tabla CWN) y con las opciones Incluir, Modificar, Borrar y las demás opciones estándar (ver

Âncora
regreso01
regreso01
prototipo 01).
Botón Incluir
Al ingresar a esta opción solicitara los datos (ver
Âncora
regreso02
regreso02
prototipo 02):

Código (CWN_codfun) .- Código asignado por el usuario para identificar la función. Obligatorio.
Regla de integridad
El código de Función es único, validara que no se repita.
Descripción (CWN_descri) .- Descripción corta de lo que hace la función. Obligatorio.
Ayuda (CWN_help) .- Campo tipo memo, que permitirá registrar una explicación acerca de la función. Obligatorio.
Tipo de Resultado (CWN_tipdat) .- Podrá seleccionar entre Numérico, Carácter o Fecha. Se refiere al tipo de resultado que arrojara la función que se está configurando.
Tipo (CWN_tipo) .- Mostrara dos opciones Conversión de Monedas y Apuntador (la rutina utilizada para llenar este listbox es la CTB92LBOX(), debe ser la misma que la que se use en la consulta especial de funciones).
Dependiendo de la selección del Tipo, la edición de los Parámetros (campos siguientes) tiene variaciones en su funcionalidad como sigue:

xMoeda

Valores que puede registrar

Tipo de dato

Consulta

Parámetro 1 (CWN_PAR1)

Aceptará mnemónicos (solo de tipo Campo) o valores numéricos

Numérico

CWJFIL

Parámetro 2 (CWN_PAR2)

Aceptará mnemónicos (solo de tipo Campo) o valores numéricos

Numérico

CWJFIL

Parámetro 3 (CWN_PAR3)

Aceptará mnemónicos (solo de tipo Campo) o valores numéricos

Numérico

CWJFIL

Parámetro 4 (CWN_PAR4)

Aceptará solo mnemónicos (solo de tipo Campo y que estos sean de tipo fecha)

Date

CWJFIL

Parámetro 5 (CWN_PAR5)

Aceptará mnemónicos (solo de tipo Campo) o valores numéricos

Numérico

CWJFIL

Parámetro 6 (CWN_PAR6)

Aceptará mnemónicos (solo de tipo Campo) o valores numéricos

Numérico

CWJFIL

Parámetro 7 (CWN_PAR7)

Aceptará mnemónicos (solo de tipo Campo) o valores numéricos

Numérico

CWJFIL


Para validar que el mnemónico seleccionado es numérico, verificara el campo asociado (cwj_campo) a dicho mnemónico, en la tabla sx3 para obtener el tipo de campo (x3_tipo). Cabe mencionar que el mnemónico se identifica porque el inicio de su nombre siempre es con M_.

Ejemplo1: Sí fue seleccionada la función XMOEDA el sistema buscara la configuración de esa Función y sabrá que esta formado por los parámetros: Valor de moneda origen (parámetro 1, tipo Numero), Código de moneda origen (parámetro 2, tipo Numero), Código de moneda destino (parámetro 3, tipo Numero), Fecha de conversión (parámetro 4, tipo Date), Valor de la moneda (parámetro 5, tipo Numero), Valor tasa de cambio (parámetro 6, tipo Numero), Valor de tipo de cambio (parámetro 7, tipo Numero).. Entonces el comportamiento será:
Parámetro 1, 2 ,3 y 5,6,7.- Aceptara mnemónicos o valores numéricos.
Parámetro 4 .- Aceptara mnemónicos o valores de tipo fecha.

Posicione

Valores que puede registrar

Tipo de dato

Consulta

Parámetro 1 (CWN_PAR1)

Aceptará solo mnemónicos de tipo tabla (cwj_tipdat='2'). Si no es mnemónico validar que el dato introducido sea una tabla que exista en sx2.

Tabla

CWJTAB

Parámetro 2 (CWN_PAR2)

Aceptará alfanumérico y estos deben existir como índice en la tabla SIX.

Alfanumérico

SIXFUN

Parámetro 3 (CWN_PAR3)

Aceptará mnemónicos de tipo campo (cwj_tipdat='1') y podrá armar cadenas unidas por el signo +. Si no es mnemónico validar que exista el dato introducido en la tabla SX3.

Campo

CWJ

Parámetro 4 (CWN_PAR4)

Aceptará mnemónicos de tipo campo (cwj_tipdat='1'). Si no es mnemónico validar que exista el dato introducido en la tabla SX3

Cadena de campos

CWJ

Parámetro 5,6,7 (CWN_PAR5,6,7)

No editable

 

 




Ejemplo, si fue seleccionada la función POSICIONE el sistema contemplara que esa función requiere los parámetros: Alias, índice, valores a buscar, valores a regresar. Entonces el comportamiento será:
(Parámetro 1) Buscar en tabla – Permitirá seleccionar un mnemónico de tipo tabla asociada una consulta estándar que dará facilidades al usuario para identificar el mnemónico.

(Parámetro 2) Orden .- Es el índice que utilizara el apuntador de acuerdo a la tabla seleccionada en el campo anterior. Podrá seleccionar entre los índices de la tabla (six).
(Parámetro 3) Datos a buscar.- Son los campos con los que buscara la información carácter de 50, permitirá seleccionarlos de la consulta estándar de mnemónicos, de tipo Campos.
(Parámetro 4) Mnemónico a Retornar – De acuerdo a la tabla seleccionada en el campo Buscar en tabla, podrá seleccionar de una consulta estándar los mnemónicos de tipo campos a retornar


Al seleccionar Confirmar, validara que:

  • Si el tipo de función fue Conversión de Monedas, el parámetro 1 a la 5 deberán estar informados.
  • Si el tipo de función fue Apuntador, el parámetro 1 a la 4 deberán estar informados.


Si las condiciones no se cumplen, enviara un aviso al usuario informando el problema y no guardara la información, hasta que el usuario haga la corrección.
Si todo bien, guardará la información en la tabla CWN, previo a esto realizara la traducción de la función a sintaxis ADVPL y este resultado se guardara en el campo CWN_advpl (crear la función CTB92ADVPL, para realizar este proceso).
Botón Modificar

Podrá modificar todos los datos, excepto el código y el tipo de función.
Si el Tipo (cwn_tipo) es Apuntador, al salir del parámetro 1, si este ya tenía información y fue cambiada para una tabla diferente los parámetros 2 y 4 deben limpiarse para que el usuario coloque nuevamente los correspondientes a la tabla seleccionada.

Regla de integridad
Verifique que la función no esté siendo utilizada por un mnemónico, esto es, verificará en la tabla CWJ que no existan mnemónicos de tipo Función. Los mnemónicos de tipo función es donde CWJ_TIPDAT ='4'. De ser así, solo permitirá modificar la Descripción y la Ayuda.

Si el mnemónico está siendo utilizado por una función, enviara al usuario el aviso "La Función está en uso de algún mnemónico, solo permitirá cambios en la Descripción y en la Ayuda".

Botón Borrar
Al selección un registro, ingresara y mostrara todos los datos, después al seleccionar Confirmar, preguntara ¿Está seguro de Eliminar el registro?, si la respuesta es afirmativa, procederá a eliminarlo.
Regla de integridad
Verifique que la función no esté siendo utilizada por un mnemónico, esto es, verificará en la tabla CWJ que no existan mnemónicos de tipo Función., Los mnemónicos de tipo función es donde CWJ_TIPDAT ='4'. Si existe su uso en algún mnemónico, al Confirmar, en vez de preguntar enviara un aviso al usuario "Esta Función está siendo utilizada en algún mnemónico y no permite ser eliminada".

Crear las consultas
CWJFIL .- Mnemónicos de Campos
Se creara la consulta estándar CWJFIL, donde se visualizaran las columnas:

  • Mnemónico (cwj_codmne)
  • Descripción (cwj_descri)
  • Tipo Dato (cwj_tipdat)
  • Grupo (cwj_grupo)
  • Tabla (cwj_tabla)
  • Campo (cwj_campo)


Filtrar la información para que solo muestre las registros que son de tipo Campo (cwj_tipdat=1 ).
Retornara el valor del código del mnemónico seleccionado (cwj_codmne).
CWJ .- Mnemónicos
Se creara la consulta estándar CWJ, donde se visualizaran las columnas:

  • Mnemónico (cwj_codmne)
  • Descripción (cwj_descri)
  • Tipo Dato (cwj_tipdat)
  • Grupo (cwj_grupo)
  • Tabla (cwj_tabla)
  • Campo (cwj_campo)
  • Dato vinculado (cwj_datvin)
  • Función RPO (vwj_funrpo)
  • Valor fijo (cwj_valor)


Retornara el valor del código del mnemónico seleccionado (cwj_codmne).
CWJTAB .- Mnemónicos de tipo Tabla
Se creara la consulta estándar CWJTAB, donde se visualizaran las columnas:

  • Mnemónico (cwj_codmne)
  • Descripción (cwj_descri)
  • Tipo Dato (cwj_tipdat)
  • Grupo (cwj_grupo)
  • Tabla (cwj_tabla)


Filtrar la información para que solo muestre las registros que son de tipo Tabla (cwj_tipdat=2), de acuerdo al campo que este solicitando la consulta y de acuerdo a la función que detone la consulta.
Retornara el valor del código del mnemónico seleccionado (cwj_codmne).

SIXFUN .- Índices por tabla
Se creara la consulta especial SIXFUN, donde se visualizaran las columnas:

Titulo

Campo

Índice

Ordem

Descripción

Dependiendo del idioma del RPO, Descricao, Descspa o Desceng

Llave

Chave


Filtrar la información para que solo muestre las registros que son de la tabla en cuestión (M->CWN_PAR1=SIX->INDICE ).
Retornara el valor de la llave seleccionada (Chave), adecuar para que por medio de algún parámetro retorne el número de índice (Ordem) o la llave (chave), ya que se utilizara también en el requisito 151103 .
Como referencia verifique la consulta HSP004 y el fuente HSPFFSXB.PRW para dar una idea de cómo debe ser construida.
CTB921 .- Consulta dinámica
Se creara la consulta específica CTB921 ya que cuando sale del campo Tipo, las consultas de los campos de parámetros cambiaran a utilizar una u otra (cambio dinámico), según se describió en los párrafos anteriores. Para conseguir esto, deberá crear una consulta específica llamada CTB921, la cual llamara la función CTB92CESP() y esta función será programada para desplegar una consulta u otra, igual crear la función CTB92CRET () para programar el retorno del dato deseado.
Nota: Para llamar una consulta estándar desde una específica puede hacer uso de la instrucción CONPAD1(,,,"Alias").

Tablas Utilizadas

  • CWN – Funciones
  • CWJ – Mnemónicos
  • SX3 – Campos
  • SIX - Índices

Prototipo de

...

Pantallas 


Âncora
prototipo01
prototipo01
Prototipo 01 Regreso
Image Modified

Âncora
prototipo02
prototipo02
Prototipo 02 Regreso
Image Modified

Reglas de

...

Integridad 

  • Se mencionan en la sección de Regla de Negocio.

Release

...

Notes 

Módulo

SIGACTB / PROTHEUS

Función

Mantenimiento de Funciones

Descripción de Función

Configuración de funciones para Conversión de Moneda y Apuntador, para ser utilizadas en la formulación de Asientos Estándar.

Módulo

SIGACTB

Función

CTBA092

Situación/Requisito

151102


Flujo de

...

Proceso 

Diagrama de Entidad y Relación
Image Modified

Diccionario de Datos
Image Modified 



CWN – Funciones

 

 

 

 

 

Campo

Tipo

Tam.

Dec.

Título

Descripción

CWN_FILIAL

C

10

 


Sucursal

 


CWN_CODFUN

C

15

 


Código


Descripción

Código de la Función  

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

Si

Validación

ExistChav("CWN")     

Contexto

Real

Propiedad

Modificar

Help

Código de la

función

función  

CWN_DESCRI

C

40

 


Descripción

Descripción

Descripción de la Función

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

Si

Contexto

Real

Propiedad

Modificar

Help

Descripción corta de la

Función

Función  

CWN_HELP

Memo

 

 



Ayuda

Descripción

Ayuda de la función  

Formato

 


Nivel

1

Usado

Si

Obligatorio

Si

Browse

No

Contexto

Real

Propiedad

Modificar

Help

Descripción

Descripción  de lo que hace la función

CWN_TIPDAT

C

1

 


Tipo resultado

Descripción

Tipo de datos del resultado  

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

Si

Contexto

Real

Propiedad

Modificar

Validación

Pertence(

"123"

“123”)

Inicializador

"1"

“1”

Opciones

1= Numérico;2=Carácter;3=Fecha

Help

Tipo dato que da como resultado la función que se está registrando.

CWN_TIPO

C

1

 


Tipo

Descripción

Tipo de función

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

Si

Contexto

Real

Propiedad

Modificar

Validación

Pertence(

"12"

“12”)

Opciones

#CTB92LBOX ()

Inicializador

"1"

“1”

Help

Seleccione el tipo de función.

CWN_PAR1

C

30

 


Parámetro1


Descripción

Parámetro 1

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

No

Contexto

Real

Propiedad

Modificar

F3

CTB921

Help

Primer parámetro que utiliza el Tipo de Función seleccionado.

CWN_PAR2

C

30

 


Parámetro2


Descripción

Parámetro 2

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

Si

Contexto

Real

Propiedad

Modificar

F3

CTB921

Help

Segundo parámetro que utiliza el Tipo de Función seleccionado.

CWN_PAR3

C

30

 


Parámetro3


Descripción

Parámetro 3

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

Si

Contexto

Real

Propiedad

Modificar

F3

CTB921

Help

Tercer parámetro que utiliza el Tipo de Función seleccionado.  

CWN_PAR4

C

30

 


Parámetro4


Descripción

Parámetro 4

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

Si

Contexto

Real

Propiedad

Modificar

F3

CTB921

Help

Cuarto parámetro que utiliza el Tipo de Función seleccionado.

CWN_PAR5

C

30

 


Parámetro5


Descripción

Parámetro 5

Formato

@!

Nivel

1

Usado

Si

Obligatorio

No

Browse

No

Contexto

Real

Propiedad

Modificar

F3

CTB921

Help

Quinto parámetro que utiliza el Tipo de Función seleccionado.

CWN_PAR6

C

30

 


Parámetro6


Descripción

Parámetro 6

Formato

@!

Nivel

1

Usado

Si

Obligatorio

No

Browse

No

Contexto

Real

Propiedad

Modificar

F3

CTB921

Help

Sexto parámetro que utiliza el Tipo de Función seleccionado.

CWN_PAR7

C

30

 


Parámetro7


Descripción

Parámetro 7

Formato

@!

Nivel

1

Usado

Si

Obligatorio

No

Browse

No

Contexto

Real

Propiedad

Modificar

F3

CTB921

Help

septimo

Âncora_GoBack_GoBack

parámetro que utiliza el Tipo de Función seleccionado.

 

 

 

 

 

 

 

 

 

 

 

 













Índice.- CWN_FILIAL+CWN_CODFUN

Diccionario Índice.- CWN_FILIAL+CWN_CODFUN
Diccionario de referencia que serán creados en otro Requisito

CWJ.-Mnemónicos

CWJ_TIPDAT

C

1



Tipo

Descripción

Tipo de Mnemónico

Formato

@!

Nivel

1

Usado

Si

Obligatorio

Si

Browse

No

Propiedad

Real/Alterar

Inic. Std

"1"

“1”

Val. Sistema

Pertence(

"123456"

“123456”)

Lista

1-Campo de BD;2-Tabla:3-Formula;4-Función;5-Función de usuario;6-Valor

Help

Clasifica el mnemónico.

Nuevos Índices

  • CWJ_FILIAL+CWJ_TIPDAT+CWJ_DATVIN

Estructura de Menú

En el módulo Configurador (SIGACFG) ingrese a la ruta Entorno/Archivos/Menus. Informe la nueva opción del menú de SIGACTB (Contabilidad de Gestión) conforme las siguientes instrucciones:

Menú

Contabilidad de Gestión

Submenú

Actualizaciones>Entes>Funciones

Nombre de Rutina

Funciones

Funciones         

Programa

CTBA092

Módulo

SIGACTB  

Tipo

Función Protheus

Casos de Testes Image Removed

...

  1. Caso(s) de Testes Reutilizable(s)

...

  1. Caso(s) de Testes Específico(s) del Proyecto

Caso de Pruebas

Insertar una nueva función de tipo Conversión de Moneda

 

 

Finalidad de Pruebas

Revisar que los Parámetros se activen las consultas como se definen en los párrafos de la sección Incluir. Y que realmente se guarde el registro.

Estimativas

10 mins

Teste del Programador

(erro) Sim ( ) Não

Recomendaciones

 

Pré-condiciones

Debe haber mnemónicos registrados (cwj)

Pós-condiciones

 

Como verificar los resultados

Consultar la función registrada por medio de la opción visualizar

Procedimientos

Resultados Esperados

1) Entrar a la rutina de Funciones (Actualizaciones->Archivos->Entes->Funciones)
2) Seleccionar incluir y registrar los datos requeridos.
3) Seleccionar que el tipo de Función sea Conversión de Moneda.
4) Registrar los parámetros.
5) Guardar la información.
Activación de los parámetros 1 al 5 y que la funcionalidad de las consultas mostradas, este de acuerdo a la funcionalidad descrita en la sección de Incluir.
Que guarde el registro (CWn).

Caso de Pruebas

Insertar una nueva función de tipo Apuntador

 

 

Finalidad de Pruebas

Revisar que los Parámetros se activen las consultas como se definen el los párrafos de la sección Incluir. Y que realmente se guarde el registro.

Estimativas

10 mins

Teste del Programador

(erro) Sim ( ) Não

Recomendaciones

 

Pré-condiciones

Debe haber mnemónicos registrados (cwj)

Pós-condiciones

 

Como verificar los resultados

Consultar la función registrada por medio de la opción visualizar

Procedimientos

Resultados Esperados

1) Entrar a la rutina de Funciones (Actualizaciones->Archivos->Entes->Funciones)
2) Seleccionar incluir y registrar los datos requeridos.
3) Seleccionar que el tipo de Función sea Apuntador.
4) Registrar los parámetros.
5) Guardar la información.
Activación de los parámetros 1 al 4 y que la funcionalidad de las consultas mostradas, este de acuerdo a la funcionalidad descrita en la sección de Incluir.
Que guarde el registro (CWn).

Caso de Pruebas

Borrado de una función que está siendo utilizada por un mnemónico.

 

 

Finalidad de Pruebas

No debe permitir borra la Función y debe enviar un aviso al usuario.

Estimativas

10 mins

Teste del Programador

(erro) Sim ( ) Não

Recomendaciones

 

Pré-condiciones

Debe tener al menos una función registrada que esta asociada a un mnemónico (cwj).

Pós-condiciones

 

Como verificar los resultados

Debe aparecer el Aviso.

Procedimientos

Resultados Esperados

1) Entrar a la rutina de Funciones (Actualizaciones->Archivos->Entes->Funciones)
2) Seleccionar una función que este siendo utilizada por algún mnemónico.
3) Seleccionar Borrar.
4) Seleccionar Confirmar.
Enviará un mensaje al usuario "Esta Función está siendo utilizada en algún mnemónico y no permite ser eliminada".

Caso de Pruebas

Modificación de una función que está siendo utilizada por un mnemónico.

 

 

Finalidad de Pruebas

No debe permitir modificar la Función y debe enviar un aviso al usuario.

Estimativas

10 mins

Teste del Programador

(erro) Sim ( ) Não

Recomendaciones

 

Pré-condiciones

Debe tener al menos una función registrada que está asociada a un mnemónico (cwj).

Pós-condiciones

 

Como verificar los resultados

Debe aparecer el Aviso.

Procedimientos

Resultados Esperados

1) Entrar a la rutina de Funciones (Actualizaciones->Archivos->Entes->Funciones)
2) Seleccionar una función que este siendo utilizada por algún mnemónico.
3) Seleccionar Modificar.
4) Seleccionar Confirmar.
Enviará un mensaje al usuario "La Función está en uso de algún mnemónico, solo permitirá cambios en la Descripción y en la Ayuda"
Permitirá solo editar los campos de Descripción y Ayuda.
Al seleccionar confirmar, guardara los cambios.

Caso de Pruebas

Borrado de una función que no está siendo utilizada por un mnemónico.

 

 

Finalidad de Pruebas

Eliminar una función.

Estimativas

10 mins

Teste del Programador

(erro) Sim ( ) Não

Recomendaciones

 

Pré-condiciones

Debe tener al menos una función registrada .

Pós-condiciones

 

Como verificar los resultados

Al regresar al browse no debe existir el registro.

Procedimientos

Resultados Esperados

1) Entrar a la rutina de Funciones (Actualizaciones->Archivos->Entes->Funciones)
2) Seleccionar una función.
3) Seleccionar Borrar.
4) Seleccionar Confirmar.
Preguntara al usuario que confirme y después de afirmar, eliminará el registro seleccionado.

Caso de Pruebas

Modificar una función que no está siendo utilizada por un mnemónico.

 

 

Finalidad de Pruebas

Cambios a la función seleccionada

Estimativas

10 mins

Teste del Programador

(erro) Sim ( ) Não

Recomendaciones

 

Pré-condiciones

Debe tener al menos una función registrada.

Pós-condiciones

 

Como verificar los resultados

Al regresar al browse no debe existir el registro.

Procedimientos

Resultados Esperados

1) Entrar a la rutina de Funciones (Actualizaciones->Archivos->Entes->Funciones)
2) Seleccionar una función.
3) Seleccionar Modificar.
4) Seleccionar Confirmar.
Permitirá editar el registro seleccionado y modificar todos los datos excepto la clave de la función.
Al seleccionar confirmar, guardara los cambios.

Aprobado por:

 

 

Aprobado por:

 

 

 

 

 

Elaborado por: Guadalupe Santacruz A.

 

 

Modificado por: