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:22]
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 134: Línea 133:
 |TraceActivityNode|tran| |ltran_Node| | |TraceActivityNode|tran| |ltran_Node| |
 |TraceBeginEnd|trbe| |ltrbe_Start| | |TraceBeginEnd|trbe| |ltrbe_Start| |
-TraceError +|TraceError|tre| |ltre_Error| | 
-tre +|TraceFile|trf| |itrf_TraceFile| | 
-ltre_Error +|TraceGarbageCollect|trgc| |itrgc_Call| | 
-TraceFile +|TraceLine|trln| |strln_Rope| | 
-trf +|TraceObject|tro| |ltro_Bob| | 
-itrf_TraceFile +|TraceRoutine|trr| |ltrr_Tiger| | 
-TraceGarbageCollect +|TraceSQL|trsql| |ltrsql_MySQL| | 
-trgc +|TraceTree|trt| |ltrt_Birch| | 
-itrgc_Call +|TraceTreeError|trte| |ltrte_Err| | 
-TraceLine +|TraceTreeGarbageCollect|trtgc| |ltrtgc_Trash| | 
-trln +|TraceTreeLine|trtl| |ltrtl_String| | 
-strln_Rope +|TraceTreeNode|trtn| |ltrtn_Kilt| | 
-TraceObject +|TraceTreeObject|trto| |ltrto_Trace| | 
-tro +|TraceTreeRoutine|trtr| |ltrtr_BobGrimmer| | 
-ltro_Bob +|TraceTreeUser|trtu| |ltrtu_User| | 
-TraceRoutine +|TraceUser|tru| |ltru_Blue| | 
-trr +|Transaction|ts| |lts_Trans| | 
-ltrr_Tiger +|TypeDefinition|typdef| |ltypdef_Details| | 
-TraceSQL +|UserObject|uo| |luo_Control| | 
-trsql +|VariableCardinalityDefinition|vcd| |lvcd_Type| | 
-ltrsql_MySQL +|VariableDefinition|vd| |lvd_Sore| |
-TraceTree +
-trt +
-ltrt_Birch +
-TraceTreeError +
-trte +
-ltrte_Err +
-TraceTreeGarbageCollect +
-trtgc +
-ltrtgc_Trash +
-TraceTreeLine +
-trtl +
-ltrtl_String +
-TraceTreeNode +
-trtn +
-ltrtn_Kilt +
-TraceTreeObject +
-trto +
-ltrto_Trace +
-TraceTreeRoutine +
-trtr +
-ltrtr_BobGrimmer +
-TraceTreeUser +
-trtu +
-ltrtu_User +
-TraceUser +
-tru +
-ltru_Blue +
-Transaction +
-tr +
-ltr_Trans +
-TypeDefinition +
-typdef +
-ltypdef_Details +
-UserObject +
-uo +
-luo_Control +
-VariableCardinalityDefinition +
-vcd +
-lvcd_Type +
-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.1571350958.txt.gz · Última modificación: 2019/10/17 22:22 por administraidor