4D v16Programación genérica (sin punteros) |
||
|
4D v16
Programación genérica (sin punteros)
Programación genérica (sin punteros)
Además de las manipulaciones explicadas en el vídeo, también debe tener en cuenta que: Estos ejercicios están configurados para mostrar una manera específica de hacer las cosas. En función de sus propios hábitos y normas de desarrollo de su empresa, puede utilizar diferentes formas de organización, de nombrar a los campos y variables, de establecer un orden para pasar parámetros,etc. Un método puede recibir hasta 32 parámetros (de $1 a $32). Sin embargo, es inusual utilizar más de 7 u 8 parámetros. Use y abuse de la programación genérica. La siguiente sección cubre el uso de punteros, complementando lo que veremos aquí. La programación genérica también le permite reducir el tamaño de su código mediante la concentración de una serie de funciones dentro del mismo método en el que pasa varios parámetros.
En este vídeo, vamos a aprender a llamar a los métodos y a utilizar parámetros. Cubriremos los parámetros de tipo puntero más adelante. El objetivo de la programación genérica es optimizar el desarrollo y facilitar el mantenimiento y la portabilidad. Ya usamos una llamada simple a un método (sin parámetros) en el método de base "On Startup" donde llamamos el método NAVIGATION. En las primeras lecciones de programación, vimos cómo configurar los botones en función de la página seleccionada en el formulario navigation. Ahora vamos a optimizar esta programación para conservar un solo método utilizable para todos los botones de navegación (All, Query, Order by, etc...).
Recibirá 2 parámetros:
Llamamos a este método de la siguiente manera: En un botón, llamamos a NAVIGATION_FUNCTIONS
NAVIGATION_FUNCTIONS("All";FORM Get current page) Hay dos formas de escribir los parámetros del método que se va a llamar, es decir, el método NAVIGATION_FUNCTIONS: Notará que para nombrar los parámetros, se utiliza la sintaxis $1, $2, ... $n para recuperar cada parámetro. Para hacer que su método sea fácil de leer, le sugerimos crear variables locales con nombres explícitos, donde se asigna el valor de los parámetros recibidos. Por lo tanto, es mejor escribir: C_TEXT($1;$Action) ya que podemos declarar varias variables en una directiva de compilación C_TEXT para las variables simples. C_LONGINT($2;$PageNum) y para recuperar el valor de $1 en $Action y el valor de $2 en $PageNum, puede escribir: $Action:=$1 El resto del método es una adaptación de lo que se describió en las secciones anteriores, adaptación de la acción a la petición y la configuración en función de la página y por lo tanto de la tabla elegida: Vamos a utilizar:
:($Action="All")
¿Cuál es la información que necesitamos reemplazar?:
Cuando cubrimos los punteros, vamos a remplazar lo que tenemos aquí por un método más genérico. Podemos hacer lo mismo con el botón Query.
y, como lo hicimos antes, reemplazamos FORM Get current page por la variable que hemos recibido. Vamos a poner un punto de ruptura y comprobar que vamos a este método cuando se ejecuta el formulario: Si hacemos clic en "Todos", vemos que el método que se está ejecutando, pero en lo que estamos especialmente interesados es en el apilamiento de los métodos:
Si hacemos doble clic en este método aparece el código que nos trae a este punto y podemos ver que el método NAVIGATIONS_FUNCTIONS se llamó (con los parámetros: "All", FORM Get current page). El método fue recibido. Aquí recibió los siguientes parámetros: $1 = "All", $2 = el número de página, aquí es la página 1. Luego, $Action es "All" de manera que vamos a esta parte Luego vamos a:
Así podemos ver que nuestro método funciona correctamente, se llama y recibe los parámetros necesarios.
|
PROPIEDADES
Producto: 4D
HISTORIA
ARTICLE USAGE
Autoformación ( 4D v16) |