Hola Walter: El código está mal, ya que no controla ningún tipo de error. Por ejemplo, TABLEUPDATE devuelve si pudo actualizar las tablas (.T. o .F.) y no lo estás consultando, estás asumiendo de que siempre puede.
Por otro lado, también estás asumiendo de que la transacción va a ir siempre bien, y no contemplás de que pueda ir mal. Finalmente, falta la rutina de control de errores, aunque asumo que como no veo Try/Catch estarás usando al antiguo ON ERROR. Hay 2 capítulos de la ayuda de VFP que te pueden servir (para copiar/pegar en la solapa "Indice"): *Managing Updates Using Transactions* *Updating Data Using Transactions* Saludos.- El 22 de junio de 2015, 19:29, Walter Comito <[email protected]> escribió: > Les paso el código > > > > Este código esta en un botón que dice guardar > > > > BEGIN TRANSACTION > > > > descripcion_articulo = ALLTRIM(mostrador.nombre)+' / '+ALLTRIM( > MOSTRADOR.MARCA)+' / '+; > > ALLTRIM(MOSTRADOR.MODELO)+' / '+vm_estado > > > > INSERT INTO ESTADIS (CREDITO,idarticulo,fecha,ARTICULO,DESCRIP, > CANTIDAD,IMPTOTAL,DEPOSITO,COSTO,; > > MARCAR,UTILBR,ESTADO) VALUES ; > > (ACT_CREDITO,articulo_buscado,DATE(),MOSTRADOR.ID, > descripcion_articulo,1,; > > thisform.pgf.page2.CNT.txtimporte.Value,BUSCADOR.DEPOSITO,VM_COSTO, ; > > IIF(VM_COSTO>0,(thisform.pgf.page2.CNT.txtimporte.Value/VM_COSTO),0 > ),; > > (thisform.pgf.page2.CNT.txtimporte.Value-vm_costo),VM_ESTADO) > > SELECT ESTADIS > > TABLEUPDATE(.t.,.T.) > > > > > > INSERT INTO inventa (idarticulo,fecha,OPERACION,CREDITO,CLIENTE, > articulo,descri,DEPOSITO,; > > CANTIDAD,usuario,ESTADO) VALUES ; > > (articulo_buscado,DATE(),"VENTA",ACT_CREDITO,"Venta: "+thisform.pgf. > page2.txtnombre.value,; > > mostrador.id,descripcion_articulo,buscador.deposito,-1,nom_usuario, > VM_ESTADO) > > SELECT inventa > > TABLEUPDATE(.t.,.T.) > > > > > > *** ELIMINO EL CODIGO CARGADO DE LA BASE ARTICULOS > > DELETE FROM ARTICULOS WHERE IDCODIGO = articulo_buscado > > SELECT ARTICULOS > > TABLEUPDATE(.t.,.T.) > > > > END TRANSACTION > > > > No tengo tablas corruptas o registros que desaparezcan > > > > La instalacion es un windows 2003 server, esta instalado en una carpeta > donde todos los usuarios acceden a ella. > > Lo hacen via red o via escritoroi remoto. > > > > No vi nada raro, todos los otros procesos laburan normalmente, es solo en > esta parte de articulos, inventario y compras donde me hace este problema > > > > > > Gracias. > > > > *Walter Cómito* > > Analista de Sistemas > > MP 0397 C.P.C.I.P.C. > > > > *›* *[email protected] <[email protected]>* > > *[email protected] <[email protected]>* > > > > *'* *+54 351 494.4667 <%2B54%20351%20494.4667>* > > * 153.292.707* > > > > *þ* *www.softram.com.ar <http://www.softram.com.ar/>* > > > > Q Si no es necesario, no imprima este correo. > > Todos somos responsables por el cuidado del medio ambiente. > > > > > > *NOTA DE CONFIDENCIALIDAD* > Este mensaje (y sus anexos) es confidencial y puede contener información > de propiedad > exclusiva de Walter Cómito (SRS Sistemas). Si usted ha recibido este > mensaje por error, > por favor comuníquelo inmediatamente a *walter.comito > <[email protected]>**@gmail.com <http://gmail.com/>* y tenga la > amabilidad > de eliminarlo; no deberá copiar el mensaje ni divulgar su contenido a > ninguna persona. > > Muchas Gracias. > > > > *De:* [email protected] [mailto:[email protected]] *En nombre de *Fernando D. > Bozzo > *Enviado el:* lunes, 22 de junio de 2015 13:47 > *Para:* GUFA List Member > *Asunto:* [GUFA] TABLEUPDATE() > > > > Hola Walter: > > Es un poco difícil decir lo que puede ser sin ver el código, ya que lo > primero que a cualquiera se le ocurriría es lo obvio, o sea, que haya > alguna condición que a veces se cumple y a veces no, y que haga que grabe o > no. > > Fuera de la obviedad, > ¿tenés algún otro problema, como corrupción de tablas, registros que > desaparecen, etc? > > ¿Cómo es la instalación que tenés montada? ¿Dónde está el EXE (o EXEs), > dónde el usuario y qué tipo de Sistema Operativo usás (en cliente y en > servidor)? > > > > Saludos.- > > > > > > El 22 de junio de 2015, 18:31, Walter Comito <[email protected]> > escribió: > > Amigos tengo un problema con el tableupdate en una transacción, a veces > guarda y a veces no. > > Ya no se de que forma ver este tema y tratar de solucionarlo. > > > > Tengo dentro de una transacción un tableupdate(.t.,.t.) on un bufer 5 para > esta tabla > > > > Si alguien me tira una idea se lo agradecería. > > > > Gracias. > > > > *Walter Cómito* > > Analista de Sistemas > > MP 0397 C.P.C.I.P.C. > > > > *›* *[email protected] <[email protected]>* > > *[email protected] <[email protected]>* > > > > *'* *+54 351 494.4667 <%2B54%20351%20494.4667>* > > * 153.292.707* > > > > *þ* *www.softram.com.ar <http://www.softram.com.ar/>* > > > > Q Si no es necesario, no imprima este correo. > > Todos somos responsables por el cuidado del medio ambiente. > > > > > > *NOTA DE CONFIDENCIALIDAD* > Este mensaje (y sus anexos) es confidencial y puede contener información > de propiedad > exclusiva de Walter Cómito (SRS Sistemas). Si usted ha recibido este > mensaje por error, > por favor comuníquelo inmediatamente a *walter.comito > <[email protected]>**@gmail.com <http://gmail.com/>* y tenga la > amabilidad > de eliminarlo; no deberá copiar el mensaje ni divulgar su contenido a > ninguna persona. > > Muchas Gracias. > > > ------------------------------ > > [image: Avast logo] <https://www.avast.com/antivirus> > > El software de antivirus Avast ha analizado este correo electrónico en > busca de virus. > www.avast.com <https://www.avast.com/antivirus> > > > > >
