tag:blogger.com,1999:blog-63391073400787127662024-03-15T07:42:56.216-07:00Development ToolsEn esta blog encontraras herramientas y tutoriales que te ayudaran al desarrollo de tus aplicaciones cliente-servidor.MalkaSoft A.D.P.Ihttp://www.blogger.com/profile/11144942449582410337noreply@blogger.comBlogger1125tag:blogger.com,1999:blog-6339107340078712766.post-71613968794829394692011-02-12T11:03:00.001-08:002021-11-23T14:00:45.609-08:00 Framework Multi-Conexion v6.0<br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span style="font-family: "verdana" , sans-serif;">Descarge el Manual y el ejemplo: </span><a href="http://www.mediafire.com/?16lg13fdcoewr9k" style="font-family: Verdana, sans-serif;">Framework Multi-Conexion v6.0 para VFP</a><br />
<br />
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input name="cmd" type="hidden" value="_s-xclick" />
<input name="hosted_button_id" type="hidden" value="PXR4JY84BHPDN" />
<br />
<table>
<tbody>
<tr><td><input name="on0" type="hidden" value="Framework v6.0" />Framework v6.0</td></tr>
<tr><td><select name="os0">
<option value="Framework v6.0 Multi-Conexion">Framework v6.0 Multi-Conexion $75.00 USD</option>
<option value="Framework v6.0 Multi-Conexion con Fuente">Framework v6.0 Multi-Conexion con Fuente $650.00 USD</option>
</select> </td></tr>
</tbody></table>
<input name="currency_code" type="hidden" value="USD" />
<input alt="PayPal, la forma más segura y rápida de pagar en línea." border="0" name="submit" src="https://www.paypalobjects.com/es_XC/MX/i/btn/btn_buynowCC_LG.gif" type="image" />
<img alt="" border="0" height="1" src="https://www.paypalobjects.com/es_XC/i/scr/pixel.gif" width="1" />
</form>
<br /></div>
<img alt="" border="0" height="1" src="https://www.paypal.com/es_XC/i/scr/pixel.gif" width="1" /><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">Hola a todos siempre nos hemos hecho esta pregunta, ¿podra VFP trabajar con otro motor de base de datos? y la gran interrogante a todo esto es. Si migro mi base de datos de VFP a otro motor de base de datos como (<b style="mso-bidi-font-weight: normal;">SQLServer, MySQL, Firebird, MariaDB, PostgreSQL, Oracle y etc.</b>), tendré que cambiar la forma de programar, déjame decirte que no lo harás. Porque he desarrollado un Framework que permite trabajar con cualquier base de datos, lo más importante es que no vas a tener que modificar ni una línea de tu código.</span>
<br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">La nueva versión no ha cambio a simple vista. El Framework trae muchas mejoras, entre una de ellas y la que más interesa a todos los desarrolladores es el control de la desconexión a la base de datos, el motivo<span style="mso-spacerun: yes;"> </span>puede ser como la falla de la red interna o si se está trabajando remotamente la caída del internet. El Framework intentara conectarse en hasta en 10 intentos, de esta manera impediremos que el usuario no pierda la información y/o el proceso que esta realizando.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br />
<br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES-PE" style="font-family: "agency fb" , "sans-serif"; font-size: 14pt;">-</span></b><span lang="ES-PE" style="font-family: "agency fb" , "sans-serif"; font-size: 14pt;"> <b style="mso-bidi-font-weight: normal;">OTHERCN<o:p></o:p></b></span></div>
<br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES-PE" style="font-family: "agency fb" , "sans-serif"; font-size: 14pt;"><span style="mso-tab-count: 1;"> </span></span></b><span lang="ES-PE" style="font-family: "agency fb" , "sans-serif"; font-size: 14pt;">Esta propiedad nos ayudara a trabajar con diferentes
conexiones simultáneamente en un formulario o ambiente de trabajo, si la
propiedad <b style="mso-bidi-font-weight: normal;">OTHERCN</b> está vacía, el
framework<span style="mso-spacerun: yes;"> </span>trabajara con la conexión por
defecto que es la varia CN.<o:p></o:p></span></div>
</div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
</div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
</div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; text-align: justify;">
<span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;"></span></div>
<b style="mso-bidi-font-weight: normal;"><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">MÉTODO:</span></b> <br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">- </span><b style="mso-bidi-font-weight: normal;"><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">SQLCOMANDO</span></b><b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";"> </span></b><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt 35.45pt;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Sus parámetros<span style="color: blue;"> </span>(<span style="color: black;">cAccion</span><span style="color: red;">, </span><span style="color: black;">cTablaSqlCur</span><span style="color: red;">, </span><span style="color: black;">cTablaSql</span><span style="color: red;">, </span><span style="color: black;">CondUpdate)<span style="mso-spacerun: yes;"> </span></span>cAccion = “N” nuevo; “A” Actualiza; “E” Eliminar.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-indent: 35.4pt;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt;">
<span lang="EN-US" style="color: blue; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Thisform</span><span lang="EN-US" style="color: red; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">.</span><span lang="EN-US" style="color: black; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">sqlconector1</span><span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">.Execute(”Select * from Tabla ”,”TablaCursor”). </span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">El segundo parámetro es el nombre del cursor y se le puede dar el nombre que mejor haga referencia a nuestra tabla SQL.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Ahora veremos como funciona el <b style="mso-bidi-font-weight: normal;">Framework. </b>Tratare de ser lo mas explicito posible, para que ustedes lo puedan aplicar en su sistema de la manera sencilla y fácil. <b style="mso-bidi-font-weight: normal;">Quiero remarcar que la idea de todo esto es no modificar el código de nuestros Sistemas. </b></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Las tablas que utilizaremos para nuestro ejemplo son las siguientes</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt; text-align: justify; text-indent: -18pt;">
<span lang="ES" style="font-family: "agency fb" , "sans-serif"; mso-bidi-font-family: "Agency FB"; mso-fareast-font-family: "Agency FB";"><span style="mso-list: Ignore;">-<span style="font-family: "times new roman";"> </span></span></span><span lang="ES" style="font-family: "arial" , "sans-serif";">CabeceraDoc</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt; text-align: justify; text-indent: -18pt;">
<span lang="ES" style="font-family: "agency fb" , "sans-serif"; mso-bidi-font-family: "Agency FB"; mso-fareast-font-family: "Agency FB";"><span style="mso-list: Ignore;">-<span style="font-family: "times new roman";"> </span></span></span><span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">DetalleDoc</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt 36pt; mso-list: l0 level1 lfo1; tab-stops: list 36.0pt; text-align: justify; text-indent: -18pt;">
<span lang="ES" style="font-family: "agency fb" , "sans-serif"; mso-bidi-font-family: "Agency FB"; mso-fareast-font-family: "Agency FB";"><span style="mso-list: Ignore;">-<span style="font-family: "times new roman";"> </span></span></span><span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Productos</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Antes de comenzar quiero recordarles que cuando utilizamos nuestros controles (TextBox, ComboBox, ListBox, Etc).<span style="mso-spacerun: yes;"> </span>En la propiedad ControlSource va enlazado la tabla y el campo.<span style="mso-spacerun: yes;"> </span></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<br />
<table border="1" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; border: currentColor; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 480;"><tbody>
<tr style="mso-yfti-firstrow: yes; mso-yfti-irow: 0;"><td colspan="6" style="background: rgb(51, 51, 153); border: 1pt solid windowtext; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 432.2pt;" valign="top" width="576"><div class="MsoNormal" style="margin: 0cm 0cm 0pt;">
<b style="mso-bidi-font-weight: normal;"><span lang="EN-US" style="color: white; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">CabeceraDoc</span></b><b style="mso-bidi-font-weight: normal;"><span lang="ES" style="color: white; font-family: "arial" , "sans-serif";"></span></b></div>
</td></tr>
<tr style="mso-yfti-irow: 1;"><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">NumeroDoc</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Fecha</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">CodCli</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">CodVen</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">FPago</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Total</span></div>
</td></tr>
<tr style="mso-yfti-irow: 2; mso-yfti-lastrow: yes;"><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">En el <b style="mso-bidi-font-weight: normal;">Load de formulario</b> cargamos nuestro cursor, que vamos a trabajar.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt;">
<span lang="EN-US" style="color: blue; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Thisform</span><span lang="EN-US" style="color: red; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">.</span><span lang="EN-US" style="color: black; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">sqlconector1</span><span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">.Execute<span style="color: #ff6600;">(</span><span style="color: maroon;">“Select * From CabeceraDoc”,”TmpCabecerado”</span><span style="color: #ff6600;">).</span></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Si lo quieren hacer más interesante podemos manejar los buffer de almacenamiento de la siguiente manera.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">CURSORSETPROP</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">(</span><span lang="ES" style="color: maroon; font-family: "arial" , "sans-serif";">"Buffering"</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">,</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">5</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">,</span><span lang="ES" style="color: maroon; font-family: "arial" , "sans-serif";">"</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> <span style="color: maroon;">TmpCabecerado"</span><span style="color: #ff6600;">)</span></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></b><b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";">Agregar un nuevo Registro.</span></b></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";">Botón Nuevo.</span></b></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Select</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> TmpCabecerado</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">APPEND BLANK</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Después que hacer todo nuestro proceso y<span style="mso-spacerun: yes;"> </span>de escribir los valores correspondientes en nuestros controles. Pasamos a guardarlo </span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";">Botón Grabar.</span></b></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Select</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> TmpCabecerado</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">=</span><span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">TABLEUPDATE</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">(</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">.T.</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">)</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="font-family: "arial" , "sans-serif";">.</span><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">Validarfecha = .T.<span style="mso-spacerun: yes;"> </span></span><span lang="ES" style="color: green; font-family: "arial" , "sans-serif";">&&Valido la fecha si no se escribo nada</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlcomando</span><span lang="ES" style="font-family: "arial" , "sans-serif";">(“N”,”TmpCabecerado”,”CabeceraDoc”)</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";">Botón Eliminar.</span></b></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Primer paso cuando uno quiere eliminar un registro es ubicarse en la posición del registro que se desea eliminar.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Select</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> TmpCabecerado</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Delete</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="font-family: "arial" , "sans-serif";">.</span><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">cLlavePrimaria=“</span><span lang="ES" style="font-family: "arial" , "sans-serif";">NumeroDoc</span><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">”</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlcomando</span><span lang="ES" style="font-family: "arial" , "sans-serif";">(“E”,”TmpCabecerado”,”CabeceraDoc”).</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Como pueden observar todo el código es de VFP no hay nada nuevo y de seguro mucho de ustedes lo tienen así. </span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">En este ejemplo veremos como se utiliza la propiedad </span><b style="mso-bidi-font-weight: normal;"><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">validacampotablasql, </span></b><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">y como guardamos nuestro detalle.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<br />
<table border="1" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; border: currentColor; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 480;"><tbody>
<tr style="mso-yfti-firstrow: yes; mso-yfti-irow: 0;"><td colspan="5" style="background: rgb(51, 51, 153); border: 1pt solid windowtext; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 432.2pt;" valign="top" width="576"><div class="MsoNormal" style="margin: 0cm 0cm 0pt;">
<b style="mso-bidi-font-weight: normal;"><span lang="EN-US" style="color: white; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">DetalleDoc</span></b><b style="mso-bidi-font-weight: normal;"><span lang="ES" style="color: white; font-family: "arial" , "sans-serif";"></span></b></div>
</td></tr>
<tr style="mso-yfti-irow: 1;"><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.4pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">NumeroDoc<span style="color: blue;"></span></span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.45pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">CodProd<span style="color: blue;"></span></span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.45pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Cantidad<span style="color: blue;"></span></span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.45pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Precio<span style="color: blue;"></span></span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.45pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Importe<span style="color: blue;"></span></span></div>
</td></tr>
<tr style="mso-yfti-irow: 2; mso-yfti-lastrow: yes;"><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.4pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.45pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.45pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.45pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 86.45pt;" valign="top" width="115"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<br />
<table border="1" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; border: currentColor; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 480;"><tbody>
<tr style="mso-yfti-firstrow: yes; mso-yfti-irow: 0;"><td colspan="6" style="background: rgb(51, 51, 153); border: 1pt solid windowtext; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 432.2pt;" valign="top" width="576"><div class="MsoNormal" style="margin: 0cm 0cm 0pt;">
<b style="mso-bidi-font-weight: normal;"><span lang="EN-US" style="color: white; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Producto</span></b><b style="mso-bidi-font-weight: normal;"><span lang="ES" style="color: white; font-family: "arial" , "sans-serif";"></span></b></div>
</td></tr>
<tr style="mso-yfti-irow: 1;"><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">CodProd</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Descripcion</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Unidad</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Stock</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">PCosto</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">StockMin</span></div>
</td></tr>
<tr style="mso-yfti-irow: 2; mso-yfti-lastrow: yes;"><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 72.05pt;" valign="top" width="96"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";">Nota:</span></b><span lang="ES" style="font-family: "arial" , "sans-serif";"> los nombres de las tablas pueden ser diferente y los campos pueden ser mucho más o diferentes solo lo utilice para el ejemplo. Hay muchas formas de determinar nuestras tablas y que campos deben llevar cada uno de ellos, a si que todo es válido según el sistema que deseamos desarrollar.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Consultando nuestra tabla y poder mostrarlo en nuestra Grilla y darles una presentación a nuestros usuarios.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt;">
<span lang="EN-US" style="color: blue; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Thisform</span><span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">.Execute(“Select d.*, p.Descripcion, p.Unidad From DetalleDoc d Inner Join Productos p On d.CodPro = p.CodPro ”,”TmpDetalle”) </span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Nuestra nueva tabla quedaría de la siguiente manera.</span></div>
<br />
<table border="1" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="border-collapse: collapse; border: currentColor; mso-border-alt: solid windowtext .5pt; mso-border-insideh: .5pt solid windowtext; mso-border-insidev: .5pt solid windowtext; mso-padding-alt: 0cm 5.4pt 0cm 5.4pt; mso-yfti-tbllook: 480;"><tbody>
<tr style="mso-yfti-firstrow: yes; mso-yfti-irow: 0;"><td colspan="8" style="background: rgb(51, 51, 153); border: 1pt solid windowtext; mso-border-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 436pt;" valign="top" width="581"><div class="MsoNormal" style="margin: 0cm 0cm 0pt;">
<b style="mso-bidi-font-weight: normal;"><span lang="EN-US" style="color: white; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">TmpDetalle</span></b><b style="mso-bidi-font-weight: normal;"><span lang="ES" style="color: white; font-family: "arial" , "sans-serif";"></span></b></div>
</td></tr>
<tr style="mso-yfti-irow: 1;"><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 62.1pt;" valign="top" width="83"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">NumeroDoc</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 52.75pt;" valign="top" width="70"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">CodProd</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 63pt;" valign="top" width="84"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Descripcion</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 52.95pt;" valign="top" width="71"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Cantidad</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 50.9pt;" valign="top" width="68"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Precio</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 51.15pt;" valign="top" width="68"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Unidad</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 50.9pt;" valign="top" width="68"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Precio</span></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 52.25pt;" valign="top" width="70"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Importe</span></div>
</td></tr>
<tr style="mso-yfti-irow: 2; mso-yfti-lastrow: yes;"><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext; border-style: none solid solid; border-width: medium 1pt 1pt; mso-border-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 62.1pt;" valign="top" width="83"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 52.75pt;" valign="top" width="70"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 63pt;" valign="top" width="84"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 52.95pt;" valign="top" width="71"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 50.9pt;" valign="top" width="68"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 51.15pt;" valign="top" width="68"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 50.9pt;" valign="top" width="68"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td><td style="background-color: transparent; border-color: rgb(240, 240, 240) windowtext windowtext rgb(240, 240, 240); border-style: none solid solid none; border-width: medium 1pt 1pt medium; mso-border-alt: solid windowtext .5pt; mso-border-left-alt: solid windowtext .5pt; mso-border-top-alt: solid windowtext .5pt; padding: 0cm 5.4pt; width: 52.25pt;" valign="top" width="70"><div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
</td></tr>
</tbody></table>
<br />
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Aquí vemos que no todo los campos pertenecen a la tabla DetalleDoc, particularmente nunca la descripción del producto o algunos campos en mi tabla detalle, ya que todo eso lo tengo en la tabla maestra Producto, por forma de normalización no puedo repetir datos en mi base de datos en mas de dos tablas.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";">Botón Agregar Detalle</span></b></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Select</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> TmpCabecerado</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">APPEND BLANK</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Quiero aclara que hay varias cosas que hacer aquí,<span style="mso-spacerun: yes;"> </span>para obtener el producto con una búsqueda o ya sea la forma de llenado con un insert into o un appen blank la forma como se programa no me voy a centrar ahí. Continuando guardamos el número del documento que hemos creado</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="EN-US" style="color: blue; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Replace </span><span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">NumDoc <span style="color: blue;">With Thisform.</span>TxtNumeroDoc<span style="color: blue;">.Value</span></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Así agregamos las líneas que necesitamos para nuestro detalle. Ahora nuestro Botón Guardar quedaría de la siguiente manera.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<b style="mso-bidi-font-weight: normal;"><span lang="ES" style="font-family: "arial" , "sans-serif";">Botón Grabar.</span></b></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: green; font-family: "arial" , "sans-serif";">&&Guardando la cabecera</span><span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Select</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> TmpCabecerado</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">=</span><span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">TABLEUPDATE</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">(</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">.T.</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">)</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="font-family: "arial" , "sans-serif";">.</span><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">Validarfecha = .T.<span style="mso-spacerun: yes;"> </span></span><span lang="ES" style="color: green; font-family: "arial" , "sans-serif";">&&Valido la fecha si no se escribo nada</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlcomando</span><span lang="ES" style="font-family: "arial" , "sans-serif";">(“N”,”TmpCabecerado”,”CabeceraDoc”)</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: green; font-family: "arial" , "sans-serif";">&&Guardando el Detalle</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";"> sqlconector1</span><span lang="ES" style="font-family: "arial" , "sans-serif";">.</span><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">Validacampotablasql = .T. </span><span lang="ES" style="color: green; font-family: "arial" , "sans-serif";">&&Verifico si los campos son iguales</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Select</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> TmpDetalle</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Scan</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> TmpDetalle.cantidad >0 <span style="color: green;">&& me aseguro que tenga cantidad</span></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt 35.45pt; text-align: justify;">
<span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">=</span><span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlcomando</span><span lang="EN-US" style="font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">(“N”,”TmpDetalle”,” DetalleDoc”)<span style="mso-tab-count: 1;"> </span></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="EN-US" style="color: blue; font-family: "arial" , "sans-serif"; mso-ansi-language: EN-US;">Endscan </span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Para la actualización de los registro seria todo igual, con la única diferencia que esta vez debemos de determinar quien es la llave principal y poder hacer los cambios sobre ello.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="font-family: "arial" , "sans-serif";">.</span><span lang="ES-PE" style="font-family: "arial" , "sans-serif"; mso-ansi-language: ES-PE;">cllaveprimaria = “NumeroDoc”</span><span lang="ES" style="font-family: "arial" , "sans-serif";"></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlcomando</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> (“A”,”TmpCabecerado”,”CabeceraDoc”)</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">El Framework no tiene limitación cuando se quiere utilizar para inserte y/o actualizar registro de una tabla. Ejemplo para insertar campos a una tabla.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Select</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> TablaVFP</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Go Top</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Scan</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";"> Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlcomando</span><span lang="ES" style="font-family: "arial" , "sans-serif";">(“N”,”TablaVFP”,”TablaSQLAlmacenar”)</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">EndScan</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: center;">
<iframe allowfullscreen='allowfullscreen' webkitallowfullscreen='webkitallowfullscreen' mozallowfullscreen='mozallowfullscreen' width='320' height='266' src='https://www.youtube.com/embed/PCCZvCaet74?feature=player_embedded' frameborder='0'></iframe></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
</div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Nota: <span style="color: black;">CondUpdate se utiliza si quiero seguir restringiendo la actualización.</span></span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">También se tiene que tomar en cuenta, si se utiliza el Framework para la actualización de los datos forzosamente tiene que declarar un campo como llave primaria, teniendo en cuenta que este campo sea o no llave primaria en su tabla.</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="font-family: "arial" , "sans-serif";">Ejemplo: </span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<span lang="ES" style="color: blue; font-family: "arial" , "sans-serif";">Thisform</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlconector1</span><span lang="ES" style="color: red; font-family: "arial" , "sans-serif";">.</span><span lang="ES" style="color: black; font-family: "arial" , "sans-serif";">sqlcomando</span><span lang="ES" style="font-family: "arial" , "sans-serif";"> (“A”,”TmpCabecerado”,”CabeceraDoc”,” CodCli=’RUSS’ ”)</span></div>
<div class="MsoNormal" style="margin: 0cm 0cm 0pt; text-align: justify;">
<br />
Sobre MariaDB: <a href="http://es.wikipedia.org/wiki/MariaDB">http://es.wikipedia.org/wiki/MariaDB</a><br />
Sobre Firebird: <a href="http://es.wikipedia.org/wiki/Firebird">http://es.wikipedia.org/wiki/Firebird</a><br />
<br />
<span style="color: blue;"><b>CONEXIÓN</b></span><b><span style="color: blue;"> A Firebird y </span></b><b><span style="color: blue;">MariaDB </span></b><br />
<b><span style="color: red;">Nota usar el comando: </span>SQLSTRINGCONNECT</b><br />
<b><span style="color: blue;">Firebird </span></b><br />
DRIVER=Firebird/InterBase(r) driver;UID=ROOT;PWD=123456;DBNAME=D:\SISTEMAS\EjemploFW\Data\MALKASOFTADPI.FDB;<br />
<br />
<b><span style="color: blue;">MariaDB </span></b><br />
DRIVER={MySQL ODBC 3.51 Driver};OPTION=0;SERVER=localhost;UID=root;PWD=123456;<br />
DATABASE=malkasoftadpi;PORT=3305;<br />
<br /></div>
<span lang="ES" style="font-family: "arial" , "sans-serif"; font-size: 12pt;">La verdad que no van a cambiar nada de sus código todo será igual, espero estar en contacto con ustedes y poder ayudarles<span style="mso-spacerun: yes;"> </span>a los interesados. Me pueden contactar en el siguiente correo <a href="mailto:rycjesusrj@hotmail.com"><span style="color: blue;">rycjesusrj@hotmail.com</span></a></span>MalkaSoft A.D.P.Ihttp://www.blogger.com/profile/11144942449582410337noreply@blogger.com5