<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
<title></title>
</head>
<body bgcolor="#ffffff" text="#000000">
Ingacio:<br>
Gracias por responder, pero luego de un par de horas peleando (buscando
en la ayuda, buscando en el foro, viendo ejemplos) no consigo hacer lo
que quiero y seguramente es por ignorancia.<br>
<br>
AyudÃndome de trozos de cÃdigo explico resumidamente lo que hago para
ver si me puede indicar donde me equivoco, tenga en cuenta que el orden
de ejecuciÃn de este cÃdigo es igual al orden en que lo escribo.<br>
<br>
1) En la funciÃn de inicio del .prg principal defino algunas variables
globales:<br>
<br>
AppData:AddData("cCamino","wventaswventas")<br>
AppData:AddData("nTipoServidor",1)Â // 1- Local, 2- Remoto, 4- Internet<br>
<br>
AppData:AddData("DataSource")<br>
AppData:AddData("Ramos")<br>
<br>
2) En un formulario que està en un segundo .prg defino el DataSource y
los DataSet que necesito: <br>
<br>
<small>CLASS TEmpresa FROM TForm<br>
<br>
ÂÂ COMPONENT oAdsEmpresas<br>
ÂÂ COMPONENT oEmpresas<br>
ÂÂ COMPONENT oAceptar<br>
ÂÂ COMPONENT oCancelar<br>
ÂÂ COMPONENT oBrowseEmpresas<br>
ÂÂ COMPONENT oBrowseEmpresasColumn3<br>
ÂÂ COMPONENT oAdsDSwventas<br>
ÂÂ COMPONENT oRamos<br>
 <br>
ÂÂ METHOD CreateForm()<br>
ÂÂ METHOD BrowseEmpresasExit( oSender, oNextCtl )<br>
ÂÂ METHOD AceptarClick( oSender )<br>
ÂÂ METHOD FormInitialize( oSender )<br>
<br>
ENDCLASS<br>
</small><br>
3) Creo un mÃtodo que se dispara en el evento onClick del boton
"aceptar" de dicho formulario y ejecuto lo siguiente:<br>
<br>
<small>METHOD AceptarClick( oSender ) CLASS TEmpresa<br>
<br>
::oAdsDSwventas:nServerType := AppData:nTipoServidor<br>
::oAdsDSwventas:cConnectÂÂÂ := AppData:cCamino<br>
::oAdsDSwventas:lConnected := .T.<br>
::oAdsDSwventas:OpenProcess()<br>
<br>
AppData:DataSource := ::oAdsDSwventas<br>
AppData:ParamÂÂÂÂ&nb sp;ÂÂÂÂ := ::oParam<br>
AppData:TerminalÂÂÂÂ := ::oTerminal<br>
AppData:NumerosÂÂÂ := ::oNumeros<br>
AppData:RamosÂÂÂÂ&nb sp;ÂÂ := ::oRamos<br>
<br>
logdebug(::oramos)ÂÂÂÂ&a mp;nbsp;ÂÂÂÂÂ&a mp;nbsp;ÂÂÂÂÂ&a mp;nbsp;Â // Aqui el debugger no muestra nada<br>
logdebug(appdata:ramos)ÂÂÂ&nb sp;ÂÂ // Aqui el debugger no muestra nada<br>
</small><br>
RETURN Nil<br>
<br>
4) En otro form que esta en un tercer .prg:<br>
<br>
<small>CLASS TRamos FROM TForm<br>
<br>
 <font color="#3333ff">DATA oDataSet INIT
{}ÂÂÂÂÂ&nbs p;ÂÂÂÂÂ&nbs p;ÂÂÂÂÂ&nbs p;ÂÂÂÂÂ&nbs p;ÂÂÂÂÂ&nbs p;ÂÂÂÂÂ&nbs p; // Aquà creà la Data que me
sugiriÃ</font><br>
ÂÂ COMPONENT oToolBar1<br>
ÂÂ COMPONENT oBrowseRamosColumn1<br>
ÂÂ COMPONENT oBrowseRamosColumn2<br>
ÂÂ COMPONENT oBrowseRamos<br>
<br>
ÂÂ METHOD CreateForm()<br>
ÂÂ METHOD FormInitialize( oSender )<br>
ÂÂ METHOD PrimeroClick( oSender )<br>
ÂÂ METHOD AnteriorClick( oSender )<br>
ÂÂ METHOD SiguienteClick( oSender )<br>
ÂÂ METHOD UltimoClick( oSender )<br>
ÂÂ METHOD Agregar( oSender )<br>
ÂÂ METHOD Eliminar( oSender )<br>
ÂÂ METHOD Modificar( oSender )<br>
ÂÂ METHOD FormKeyDown( oSender, nKey, nFlags )<br>
ÂÂ METHOD CerrarClick( oSender )<br>
ÂÂ METHOD BrowseRamosColumn1HeaderClick( oSender, nFlags, nPosX, nPosY )<br>
ÂÂ METHOD BrowseRamosColumn2HeaderClick( oSender, nFlags, nPosX, nPosY )<br>
ÂÂ METHOD BrowseRamosCreate( oSender )<br>
<br>
ENDCLASS<br>
</small><br>
//---------------------------------------------------------- ------------------- <br>
<br>
<small>METHOD FormInitialize( oSender ) CLASS TRamos<br>
<br>
<font color="#3333ff">oSender:oDataSet :=
AppData:RamosÂÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp; // Aquà intento cargar la dataÂ
con el contenido de lo que necesito </font><br>
<br>
logdebug(oSender:oDataset)ÂÂÂ& ;nbsp;ÂÂÂÂÂ& ;nbsp;ÂÂÂÂÂ& ;nbsp;ÂÂÂÂÂ& ;nbsp;ÂÂÂÂÂ& ;nbsp;ÂÂÂÂÂ& ;nbsp;ÂÂÂÂÂ& ;nbsp; //
Aqui intento ver si quedo bien cargada, pero no veo nada<br>
logdebug(appdata:ramos)ÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp;ÂÂÂÂÂ&nb sp;ÂÂÂÂÂ //
Aqui intento ver que trae la variable global Appada:ramos, pero no veo
nada<br>
<br>
Return Nil<br>
<br>
//---------------------------------------------------------- -------------------- <br>
<br>
METHOD BrowseRamosCreate( oSender ) CLASS TRamos<br>
<br>
oSender:oDataSet := AppData:Ramos<br>
<br>
RETURN Nil<br>
<br>
//---------------------------------------------------------- -------------------- <br>
</small><br>
Dado que estoy en proceso de aprendizaje, aclaro que me apoyo mucho en
el debugger para ir "viendo" lo que hago, pero echo de menos algÃn
lugar donde pueda preguntar por el contenido de una variable, al estilo
debugger de clipper 5.3, Âse podrà agregar?<br>
<br>
Deseando salir de este "pantano" agradezco desde ya toda ayuda.<br>
<br>
Saludos<br>
Daniel.<br>
<br>
<br>
Ignacio Ortiz de ZÃÃiga escribiÃ:
<blockquote cite="mid:4794d205$
1@ozsrv2.ozlan.local" type="cite">
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
<meta content="MSHTML 6.00.6000.16587" name="GENERATOR">
<style></style>
<div><font face="Arial" size="2">Daniel, </font></div>
<div>Â</div>
<div><font face="Arial" size="2">Cree una data de nombre oDataset en
el formulario y asignela igual que hace con los controles. </font></div>
<div>Â</div>
<div><font face="Arial" size="2">Un saludo,</font></div>
<div><br>
-- <br>
Ignacio Ortiz de ZÃÃiga<br>
<a moz-do-not-send="true" href="http://www.xailer.com">http://www.xailer.com</a></div>
<div>Â</div>
<div>Â</div>
<blockquote dir="ltr"
style="border-left: 2px solid rgb(0, 0, 0); padding-right: 0px; padding-left: 5px; margin-left: 5px; margin-right: 0px;">
<div>"Daniel Du PrÃ" <<a moz-do-not-send="true"
href="mailto:
ddupre@macrosistemas.com.uy">
ddupre@macrosistemas.com.uy</a>>
escribià en el mensaje <a moz-do-not-send="true"
href="news:
4794ad4e@ozsrv2.ozlan.local">news:
4794ad4e@ozsrv2.ozlan.local</a>...</div>
JosÃ:<br>
<br>
Haciendo pruebas con esta forma de asignaciÃn me pasa lo siguiente:<br>
<br>
En aquellos forms donde ya tenÃa un DataSet creado utilizo la propiedad
cVarName para referirme a Ãl en toda acciÃn que quiera realizar (altas,
bajas, modificaciones). Ahora al asignarlos de esta forma veo que no
cuento con esa propiedad y por lo tanto no me doy cuenta como debo
referirme para seguir realizando las mismas acciones.<br>
<br>
ÂBajo que nombre o identificador "veo" los datasets pasados de esta
forma (oSender:oDataSet := AppData:oRamos), en los formularios que los
"reciben"?<br>
<br>
Saludos<br>
Daniel.<br>
<br>
<br>
Jose F. Gimenez escribiÃ:
<blockquote cite="mid:
47835134@ozsrv2.ozlan.local" type="cite">
<pre wrap="">Daniel,
</pre>
<blockquote type="cite">
<pre wrap="">1) No se como hacer para ir pasando de formulario a formulario a
formulario, etc. los DataSets que deben utilizar. Âalguna idea? he
realizado cosas como esta pero mi ignorancia en oop me lleva a errores.
</pre>
</blockquote>
<pre wrap=""><!---->
Lo mÃs sencillo es utilizar AppData o variables globales para almacenar los
dataset, y asà estarÃn disponibles desde todo el programa. P.ej, supongamos
que se almacenan en AppData; para asignarlos basta con:
oSender:oDataSet := AppData:oRamos
</pre>
<blockquote type="cite">
<pre wrap="">2) ÂHay alguna novedad de DataModule? Âya lo implementaron y no me
enterÃ? o està en vÃas de desarrollo.
</pre>
</blockquote>
<pre wrap=""><!---->
Està previsto para la versiÃn 2.0
</pre>
</blockquote>
</blockquote>
</blockquote>
</body>
</html>