Recordatorios con VFP

Hola antes que nada espero que tengasu un buen día, mi duda es la siguiente: Me gustaría agregar a mi aplicación recordatorios, por ejemplo: Si un usuario POR crea un nuevo registro dirigido al Usuario Y, cuando Y se conecte(entre al sistema) le aparezca un mensaje que tiene un registro por leer, pero no tengo idea por donde empezar, me podrías dar una sugerencia o algún ejemplo similir de donde me pudiera apoyar. Muchas gracias por tu atención, mi correo es [email protected] y/o [email protected]
Respuesta
1
No entiendo muy bien cual es tu problema, si tu programa trabaja en red necesariamente debes abrir las tablas de forma compartida, si dos o más personas crean un registro al mismo tiempo el motor las añade de forma concurrente (*) y el solo bloquea el registro o sea nunca se topan, el comando para bloquear uno o más registros es RLOCK(), en general no te recomiendo trabajar con locks o dejando tablas de solo lectura ya que es mucho más dificl mantener un código así ademas de problemas inesperados que se pueden generar dentro de la misma red.
(*) si lo que necesitas, por ejemplo, es dar un numero de folio a los usuarios; Este numero debe existir en ontra tabla y cada vez que se logre una grabación exitosa (osea que efectivamente va a usar el numero) asignarle el numero disponible en esta tabla e incrementarlo en el rango que corresponda.
Hola muchas gracias por tu atención, ya logre hacer lo que necesitaba, ahora tengo otro problema, no c como bloquear un registro cuando se esta editando, no se si usar Buffering o Flock, mi programa lo estoy probando en red, pero cuando creo un registro nuevo y si al mismo tiempo alguien crea otro nuevo le permite hacerlo, me gustaría que cuando alguien este editando o creando un registro en una tabla, esta se encuentre de solo lectura por el momento.
De antemano t agradezco tu atención
Hola, creo que entendiste bien mi problema, muchas gracias por tu consejo, me podrás proporcionar un ejemplo para generar el numero de folio, por que yo lo asigno mediante la función Recno de la siguiente forma: ALLTRIM(STR(RECNO())) y de esta mandera si dos persona entran al mismo tiempo les genera el mismo numero de folio a ambas, me guarda las 2 pero con el mismo folio y creo que es por que la función Recno te asigna el numero de registro actual y como aun no se han guardado ninguno de los dos registros por eso les asigna el mismo, espero me puedas ayudar.
Gracias por tu tiempo
1º Tu función con recno esta contando toda la tabla cada vez que asignas un numero de folio, eso no es lo optimo ya que el proceso cada vez se demorar más y mas; y le estas dand un trabajo al servidor que no necesita hacer.
  2º Como te dije anteriormente el numero de folio debes asignarlo al momento de grabar, nunca antes ya que si un usuario toma el folio uno el segundo el folio dos, si el usuario uno no graba perdiste el numero de folio uno.
  3º Tu tabla de control de correlativos debe tener 2 campos, 1 text y otro numérico y 1 solo registro para los folios. En el primer campo del registro pones FOLIO y en el segundo el numero del folio correspondiente. Cuando grabas en tu aplicación vienes a esta tabla buscas el registro del FOLIO tomas el numero que existe en el campo numero de folio y lo reemplazas por el mismo valor + 1
Como hago para generarlo al momento de guardar, ¿puedo hacerlo si utilizo los picbuttons para realizar las operaciones (guardar, editar, etc) en la tabla? O tengo que crear mis propios botones, perdón por la pregunta pero es que soy nuevo y utilizo los picbuttons para agregar datos a mis tablas, no c como hacerlo mediante código. ¿Tendrás un ejemplo que me ayude a corregir mi error?
¿Generas tus pantallas con el asistente?, si es así te felicito por hacer un sistema que funcione en red de este modo.
Te dejo un link con varios programas y ejemplos.
http://www.portalfox.com/

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas