{"id":331,"date":"2023-06-07T16:13:13","date_gmt":"2023-06-07T21:13:13","guid":{"rendered":"http:\/\/blog.espol.edu.ec\/sistinfo\/?p=331"},"modified":"2026-04-01T02:50:48","modified_gmt":"2026-04-01T07:50:48","slug":"taller_resumen-formulario-subformulario-ingreso-datos","status":"publish","type":"post","link":"https:\/\/blog.espol.edu.ec\/sistinfo\/taller_resumen-formulario-subformulario-ingreso-datos\/","title":{"rendered":"S04 Taller_Resumen: Formulario y subformulario en ingreso de datos"},"content":{"rendered":"\n<p>Para el caso planteado en clases sobre Fidelizaci\u00f3n de clientes, realice lo siguiente:<\/p>\n\n\n\n<figure class=\"wp-block-image alignright\"><a href=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Tabla_Puntos01.png\"><img loading=\"lazy\" decoding=\"async\" width=\"370\" height=\"154\" src=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Tabla_Puntos01.png\" alt=\"Tabla de Superpuntos\" class=\"wp-image-196\" srcset=\"https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Tabla_Puntos01.png 370w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Tabla_Puntos01-300x125.png 300w\" sizes=\"auto, (max-width: 370px) 100vw, 370px\" \/><\/a><\/figure>\n\n\n\n<p>1. Dise\u00f1e tablas, campos, claves primarias y relaciones para el proceso descrito en el caso y revisado durante la clase. Lo m\u00ednimo necesario para la tabla de transacciones se muestra a continuaci\u00f3n.<\/p>\n\n\n\n<p>Ingrese datos de prueba para comprobar la funcionalidad de lo presentado.<\/p>\n\n\n\n<p>Revise que el dise\u00f1o planteado es acorde a lo desarrollado para el an\u00e1lisis te\u00f3rico del caso. De ser necesario a\u00f1ada los elementos necesarios para hacer factible lo descrito con la DB, Por ejemplo, una tabla de clientes.<\/p>\n\n\n\n<p>2. Implemente un Formulario \"F_Puntos\" para el ingreso de datos simple, de tipo columnas y a\u00f1ada un cuadros de texto con nombres \"saldo_ultimo\" y \"saldo_nuevo\".<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_Puntos02.png\"><img loading=\"lazy\" decoding=\"async\" width=\"571\" height=\"310\" src=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_Puntos02.png\" alt=\"Formulario para puntos\" class=\"wp-image-197\" srcset=\"https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_Puntos02.png 571w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_Puntos02-300x163.png 300w\" sizes=\"auto, (max-width: 571px) 100vw, 571px\" \/><\/a><\/figure>\n\n\n\n<p>En principio son cuadros simples sin asociaci\u00f3n a ning\u00fan campo o valor. registrado. Asignar nombres a los cuadros como \"saldo_ultimo\" y \"saldo_nuevo\".<\/p>\n\n\n\n<p>Para encontrar el \u00faltimo saldo registrado en la tabla, en el cuadro de \"saldo_ultimo\", use como \"Datos\/origen de control\" la siguiente expresi\u00f3n (bot\u00f3n \"...\") :<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">=D\u00daltimo(\"[saldo_final]\";\"Puntos\";\"\")<\/pre>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos02.png\"><img loading=\"lazy\" decoding=\"async\" width=\"952\" height=\"349\" src=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos02.png\" alt=\"buscar dato ultimo\" class=\"wp-image-338\" srcset=\"https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos02.png 952w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos02-300x110.png 300w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos02-768x282.png 768w\" sizes=\"auto, (max-width: 952px) 100vw, 952px\" \/><\/a><\/figure>\n\n\n\n<p>El \u00faltimos saldo depende de las transacciones previas registradas en la tabla \"Puntos\"<\/p>\n\n\n\n<p>3. Para calcular el \"saldo_nuevo\" usando los puntos de ingreso o retiro, en el cuadro \"saldo_nuevo\", en la propiedad \"Datos\/origen de control\" podr\u00eda usar una expresi\u00f3n semejante a:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">=[saldo_ultimo]+[ingreso]-[retiro]<\/pre>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos03.png\"><img loading=\"lazy\" decoding=\"async\" width=\"943\" height=\"348\" src=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos03.png\" alt=\"saldo nuevo, ingresos y retiros\" class=\"wp-image-339\" srcset=\"https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos03.png 943w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos03-300x111.png 300w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos03-768x283.png 768w\" sizes=\"auto, (max-width: 943px) 100vw, 943px\" \/><\/a><\/figure>\n\n\n\n<p>Realice un formulario tipo tabular para la tabla de \"detalles\", de ser necesario use un cuadro combinado para la selecci\u00f3n de las claves primarias.<\/p>\n\n\n\n<p>Por ahora, en la vista de formulario, actualice los campos (copie los valores) \"saldo_inicial\" y \"saldo_final\" con los valores mostrados en \"saldo_ultimo\" y \" saldo_nuevo\" respectivamente. Luego se automatizar\u00e1 este paso, pues no es parte de tema del taller formulario\/subformulario.<\/p>\n\n\n\n<p>4. La tabla de Puntos registra los puntos para todos los clientes, por lo que es importante separar las transacciones por clientes en el Formulario. Se usar\u00e1 un Formulario\/Subformulario para clasificar los datos.<\/p>\n\n\n\n<p>Debe crear un formulario \"SF_PuntosHistorial\" de la tabla \"Puntos\" de tipo tabular.<\/p>\n\n\n\n<p>5. Crear una copia del formulario del numeral 2 con nombre \"F_SF_Puntos\", y a\u00f1ada como subformulario el realizado en el numeral anterior \"SF_PuntosHistorial\".<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><a href=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos04.png\"><img loading=\"lazy\" decoding=\"async\" width=\"524\" height=\"278\" src=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos04.png\" alt=\"boton subformulario\" class=\"wp-image-340\" srcset=\"https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos04.png 524w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos04-300x159.png 300w\" sizes=\"auto, (max-width: 524px) 100vw, 524px\" \/><\/a><\/figure>\n\n\n\n<p>A\u00f1ada el control de subformulario en la secci\u00f3n \"Detalle\" o cuerpo del subformulario.<\/p>\n\n\n\n<p>Use como v\u00ednculos entre \"campos principales y secundarios\" el campo id_cliente en ambas formularios.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos05.png\"><img loading=\"lazy\" decoding=\"async\" width=\"576\" height=\"379\" src=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos05.png\" alt=\"campos vinculantes formulario y subformulario\" class=\"wp-image-341\" srcset=\"https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos05.png 576w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/TallerS04_Form_Puntos05-300x197.png 300w\" sizes=\"auto, (max-width: 576px) 100vw, 576px\" \/><\/a><\/figure>\n\n\n\n<p>La selecci\u00f3n del campo del formulario y del subformulario permite filtrar los datos relacionados en el subformulario.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><a href=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_SF_Puntos03.png\"><img loading=\"lazy\" decoding=\"async\" width=\"953\" height=\"533\" src=\"http:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_SF_Puntos03.png\" alt=\"Formulario y subformulario\" class=\"wp-image-198\" srcset=\"https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_SF_Puntos03.png 953w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_SF_Puntos03-300x168.png 300w, https:\/\/blog.espol.edu.ec\/sistinfo\/files\/2023\/06\/Form_SF_Puntos03-768x430.png 768w\" sizes=\"auto, (max-width: 953px) 100vw, 953px\" \/><\/a><\/figure>\n\n\n\n<p>Verifique si ingresa un nuevo registro con otro \"id_cliente,\" el historial de la parte inferior se actualiza autom\u00e1ticamente.<\/p>\n\n\n\n<p>Complete la instrucci\u00f3n de b\u00fasqueda de saldo_ultimo considerando el criterio que se busca de un cliente especifico dado por id_cliente del formulario.<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">=D\u00daltimo(\"[saldo_final]\";\"Puntos\";\"Puntos.[id_cliente]=\"&amp;id_cliente)<\/pre>\n\n\n\n<p>5. Realice una consulta tipo pregunta gerencial aplicable para el caso.<\/p>\n\n\n\n<p>Puede realizar una consulta que muestre el conteo de transacciones por cada cliente, que indica cu\u00e1l es el cliente m\u00e1s frecuente.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\" \/>\n\n\n\n<p><em><strong>Referencia<\/strong><\/em>: Funciones DPrim (DFirst), D\u00daltimo (DLast). support.microsoft.com. Revisado Octubre,2022. https:\/\/support.microsoft.com\/es-es\/office\/funciones-dprim-dfirst-d%C3%BAltimo-dlast-adb06169-bf49-4f80-bf04-1e4b5a48a8a7<\/p>\n\n\n\n<p>Crear un formulario que contiene un subformulario (formulario de uno a varios). support.microsoft.com. Revisado Octubre,2022.<br>https:\/\/support.microsoft.com\/es-es\/office\/crear-un-formulario-que-contiene-un-subformulario-formulario-de-uno-a-varios-ddf3822f-8aba-49cb-831a-1e74d6f5f06b<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Para el caso planteado en clases sobre Fidelizaci\u00f3n de clientes, realice lo siguiente: 1. Dise\u00f1e tablas, campos, claves primarias y relaciones para el proceso descrito en el caso y revisado durante la clase. Lo m\u00ednimo necesario para la tabla de transacciones se muestra a continuaci\u00f3n. Ingrese datos de prueba para comprobar la funcionalidad de lo [&hellip;]<\/p>\n","protected":false},"author":8043,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1843],"tags":[],"class_list":["post-331","post","type-post","status-publish","format-standard","hentry","category-actividades"],"_links":{"self":[{"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/posts\/331","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/users\/8043"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/comments?post=331"}],"version-history":[{"count":5,"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/posts\/331\/revisions"}],"predecessor-version":[{"id":647,"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/posts\/331\/revisions\/647"}],"wp:attachment":[{"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/media?parent=331"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/categories?post=331"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espol.edu.ec\/sistinfo\/wp-json\/wp\/v2\/tags?post=331"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}