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
wiki:2.-desarrollo-app:2.3.-codigo:c.-eventos:3.-insert:start [2017/09/26 13:44] – [Nodo INSERT] patriciawiki:2.-desarrollo-app:2.3.-codigo:c.-eventos:3.-insert:start [2019/05/20 18:40] (actual) – [Ejemplo de Código] ary
Línea 1: Línea 1:
 +
 +{{indexmenu_n>1}}
 +===== Nodo INSERT =====
 +\\
 +
 +Nodo en el cual se van a establecer las reglas y acciones de grabación en una colección.\\
 +
 +Se ejecuta cuando intentamos guardar un objeto. Primero, se validará que se han introducido correctamente todos los valores requeridos (beforeaction) y después, si queremos, podemos efectuar alguna acción post-guardado.\\
 +
 +\\
 +Si la grabación es exitosa, se ejecutarán las acciones definidas con el tipo “action".\\
 +
 +El formato es el siguiente:
 +<code xml>
 +<insert>
 +
 + <!-- Formato de una acción previa a la grabación -->
 + <beforeaction atributos>
 + ...
 + Aqui hacemos las validaciones ANTES de grabar el objeto
 + ...
 + </beforeaction >
 +
 + <!-- Formato de una acción de grabación -->
 + <action atributos>
 + ...
 + Aqui ya se ha grabado el objeto
 + ...
 + </action>
 +
 +</insert>
 +</code>
 +===== Ejemplo de Código =====
 +
 +<code xml>
 +<insert>
 + <!-- Acciones antes de la grabación / VALIDACIONES -->
 +
 + <beforeaction name="runscript">
 +
 +         <script language="VBScript">
 + Dim msg,fech,mes,dia
 + msg=""
 + if this("FECHANAC") is nothing then
 + msg=msg+"Fecha nacimiento Vacio "+chr(13)+chr(10)
 + else
 + dia=Cint(day(this("FECHANAC"))-day(now))
 + mes=Cint(Month(this("FECHANAC"))-Month(now))
 + if  dia &lt; 0 or mes &lt; 0 then
 + fech=Cint(year(now)-year(this("FECHANAC"))-1)
 + else
 + fech=cint(year(now)-year(this("FECHANAC")))
 + end if
 + if fech &lt; 0 then
 + msg=msg+"Fecha introducida Incorrecta"+chr(13)+chr(10)
 + else
 + if fech &lt; 18 then
 + msg=msg+"Usted Es menor de edad"+chr(13)+chr(10)
 + end if
 + end if      
 + end if
 +       if msg&lt;&gt;"" then
 +       Appdata.FailWithMessage -8100,msg      
 +       end if      
 + </script>
 +        </beforeaction>
 +
 +
 + <!--Acciones de grabación -->
 +
 +
 + <!-- Asignará el valor del "ID" del objeto actual en el campo "IDDOCUMENTO" de sus líneas del content "DetallesTotal" -->
 +
 + <action name="link" coll="DetallesTotal" field="IDDOCUMENTO" value="##ID##"/>
 +
 +</insert>
 +</code>
 +\\
 +
 +
 +<code javascript>
 + <insert>
 +        <action name="link" coll="imagenes" field="IDINCIDENCIA" value="##ID##" />
 + </insert>
 + </code>
 +
 +
 +
 +\\
 +