Herramientas de usuario

Herramientas del sitio


ada:tips:sicoferp:general:pbtows:procesos:developmentstandards:nomenclature:pb

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
ada:tips:sicoferp:general:pbtows:procesos:developmentstandards:nomenclature:pb [2019/10/17 22:27]
administraidor
ada:tips:sicoferp:general:pbtows:procesos:developmentstandards:nomenclature:pb [2019/10/22 15:52] (actual)
administraidor [Recomendaciones:]
Línea 40: Línea 40:
 ^  Tipo Libreria ​ ^  Prefijo ​ ^  Código Aplicación ​ ^  Capa de implementación ​ ^  Nombre Componente ​ ^  Ejemplo ​   ^ ^  Tipo Libreria ​ ^  Prefijo ​ ^  Código Aplicación ​ ^  Capa de implementación ​ ^  Nombre Componente ​ ^  Ejemplo ​   ^
 |Lanzadora|ws|00|No Aplica|login|ws00_login.pbl| |Lanzadora|ws|00|No Aplica|login|ws00_login.pbl|
-|Invocadora|sf|00|controller|login|sf00controller_login.pbl| +|Invocadora|sf|00|Controller|login|sf00controller_login.pbl| 
-|Modelo|sf|00|model|login|sf00model_login.pbl|+|Modelo|sf|00|Model|login|sf00model_login.pbl|
  
 === Observaciones === === Observaciones ===
Línea 93: Línea 93:
 |ConnectObject|cno| |scno_ConObj| | |ConnectObject|cno| |scno_ConObj| |
 |Datastore|ds| |lds_source| | |Datastore|ds| |lds_source| |
-|Datawindow Grid|dwg| |dwg_lista|Solo aplica para la definición del control (dataobject). No para utilización en la implementación| +|Datawindow Grid|dwg| |dwg_lista|Solo aplica para la definición del control (dataobject). No para utilización en la implementación ​(se usa datastore)
-|Datawindow Free|dwf| |dwf_consulta|Solo aplica para la definición del control (dataobject). No para utilización en la implementación+|Datawindow Free|dwf| |dwf_consulta|Solo aplica para la definición del control (dataobject). No para utilización en la implementación (se usa datastore)|
-|Datawindow Free|dwf| |dwf_consulta|Solo aplica para la definición del control ​(dataobject). No para utilización en la implementación|+
 |DynamicDescriptionArea|dda| |ldda_Execute| | |DynamicDescriptionArea|dda| |ldda_Execute| |
 |DynamicStagingArea|dsa| |ldsa_MyQuery| | |DynamicStagingArea|dsa| |ldsa_MyQuery| |
Línea 156: Línea 155:
 |VariableDefinition|vd| |lvd_Sore| | |VariableDefinition|vd| |lvd_Sore| |
  
 +=== Observaciones ===
 +  * Cualquier tipo de datos o control no definido en la tabla anterior no debe ser utilizado en la generación de componentes ni en el consumo de proxys.
  
 +=== Convención de nombres de clases ===
  
 +== Prefijos de clases ==
  
 +^  Clase  ^  Prefijo ​ ^   ​Código Aplicación ​ ^  Ejemplo ​ ^  Observaciones ​ ^
 +|Standard Class User Object|n_| |n_ds|Esta nomenclatura se puede ignorar si se mantiene el nombramiento de variables y calificadores de acceso Ej: lds_source para datastore|
 +|Custom Class User Object|n_cst_| |n_cst_customer| |
 +|Global Structure|s_| |s_point| |
  
 +== Nombramiento de clases: Custom Class User Object ==
  
 +^  Tipo de Clase  ^  Capa de Implementación ​ ^  Prefijo ​ ^  Ejemplo ​ ^  Observaciones ​ ^
 +|Controller|Controller|n_cst_controller_|n_cst_controller_login|Se recomienda una sola implementación por componente|
 +|Service|Controller|n_cst_service_|n_cst_service_login|Se recomienda una sola implementación por componente|
 +|Model|Model|n_cst_|n_cst_login|Pueden existir varias clases modelo dependiendo de la complejidad del componente|
  
 +=== Observaciones ===
 +  * Cualquier tipo de datos o control no definido en la tabla anterior no debe ser utilizado en la generación de componentes ni en el consumo de proxys.
  
 +=== Convención de nombres de Tipos de Datawindows ===
  
 +^  Clase  ^  Prefijo ​ ^   ​Código Aplicación ​ ^  Ejemplo ​ ^  Observaciones ​ ^
 +|Grid|dwg_| |dwg_prueba| |
 +|Free o para Filtros|dwf_| |dwf_prueba| |
 +|External|dwe_| |dwe_prueba| |
  
 +=== Observaciones ===
 +  * Cualquier tipo de datawindows no definido en la tabla anterior no debe ser utilizado en la generación de componentes ni en el consumo de proxys.
  
 +=== Convención de nombres de funciones ===
  
 +^  Tipo  ^  Prefijo ​ ^   ​Código Aplicación ​ ^  Ejemplo ​ ^  Observaciones ​ ^
 +|Function Object|of_| |of_calcular_saldo| |
 +|Function Set|set_| |set_valor| |
 +|Function Get|get_| |get_valor| |
  
 +=== Observaciones ===
 +  * No debe utilizar funciones globales.
  
 +==== Recomendaciones:​ ====
 +La siguientes recomendaciones no imponen reglas de utilización sin embargo trate en lo posible de aplicarlas ya que el hacerlo optimiza el código generado:
  
- +  * Evite el uso de variables globales. 
- +  * No utilice cursores en el código (utilice datastore). 
-  * [[ada:tips:sicoferp:​general:​pbtows:​procesos:​developmentstandards:​nomenclature:​pb|Nomenclatura Powerbuilder]] +  * Evite el uso de funciones globales (agrupelas en objetos no visuales). 
- +  * Evite el uso de la tabla Dummy (utilice datawindows external). 
 +  * Evite el uso de la función RowCount() en un bucle Ejfor i = 1 to ldwg_prueba.RowCount ya que implica un consumo excesivo de ram en su lugar asigne el valor una variable y utilicela en la definición del bucle. 
 +  * Evite el uso del tipo de dato Date en su lugar utilice el tipo Datetime. 
 +  * No debe utilizar el tipo de datos Any en la capa de implementacion controller, solo puede ser utilizado en la capa model ya que las conversiones implicitas pueden generar comportamientos indefinidos y excepciones en tiempo de ejecución. 
 +  * El valor Nulo solo es permitido en las asignaciones implicitas setNull y en los valores de retornos de la base de datos.
  
ada/tips/sicoferp/general/pbtows/procesos/developmentstandards/nomenclature/pb.1571351267.txt.gz · Última modificación: 2019/10/17 22:27 por administraidor