Page 1 of 2

Ejemplo de agenda telefonica

PostPosted: Sat Aug 29, 2015 11:34 am
by RSalazarU
Amigos del foro:

Alguien tendra un ejemplo de una agenda telefonica, que cosas debe tener??

En el intenet vi uno que tenia las pestañas de la A-Z....


De antemano, muchas gracias.


Rolando
Cochabamba, Bolivia

Re: Ejemplo de agenda telefonica

PostPosted: Sat Aug 29, 2015 1:02 pm
by FranciscoA
Rolando.
En samples\account hay un ejemplo: mntotel.prg
Revisalo.

Saludos.

Re: Ejemplo de agenda telefonica

PostPosted: Tue Sep 01, 2015 1:44 pm
by MarioG
RZalazar
Te dejo un link para que bajes una aplicación Agenda Telefónica
https://onedrive.live.com/redir?resid=455108363FB0F382!3577&authkey=!AHrxudHPcx9-Pt4&ithint=file%2crar
Mirala y lo que te sea util lo vemos (al código me refiero)

Re: Ejemplo de agenda telefonica

PostPosted: Sat Sep 12, 2015 2:37 am
by Marcelo Roggeri
Hola Rolando te paso una imagen de lo que me hice yo, es algo muy básico pero funcional.
Image
Espero que te sirva de base el ejemplo.
Saludos

Re: Ejemplo de agenda telefonica

PostPosted: Sat Sep 12, 2015 4:25 pm
by joseluisysturiz
Marcelo Roggeri wrote:Hola Rolando te paso una imagen de lo que me hice yo, es algo muy básico pero funcional.
Image
Espero que te sirva de base el ejemplo.
Saludos

Saludos, uns preguntra, que control usas para las pestañas, folde, folderex o algun otro.? gracias, saludos... :shock:

Re: Ejemplo de agenda telefonica

PostPosted: Sat Sep 12, 2015 5:03 pm
by Marcelo Roggeri
Hola José Luis, en mis sistemas lo tengo hecho con folder, la imagen es un ejemplo con folderex que queda mas bonito visualmente.
Saludos.
Marcelo

Re: Ejemplo de agenda telefonica

PostPosted: Sun Sep 13, 2015 7:24 pm
by RSalazarU
Amigos del foro:

Gracias por las respuestas.

En realidad lo que necesitaba era algo mas que una agenda.

Y quedo asi:
Image

La captura de datos:
Image

El generador de reportes:
Image

Lo interesenta es que solo me llevo 2 semanas aprox.

Re: Ejemplo de agenda telefonica

PostPosted: Sun Sep 13, 2015 7:34 pm
by joseluisysturiz
Muy bonitas tus pantallas, por lo svisto estas haciendo algo para iglesias, tambien desarrollo una aplicacion para iglesias pero mas completa, control de miembros, ofrendas, clasificaciones, agrupaciones, crecimiento eclesiastico, etc...me gustaria saber con que clase u objeto hicistes las pestañas de la agenda, donde seleccionas las letras, estoy a la orden para cualquier consulta relacioada con sistema para iglesias, para compartir e intercambiar ideas, gracias, saludos... :shock:

Re: Ejemplo de agenda telefonica

PostPosted: Mon Sep 14, 2015 10:27 am
by Silvio.Falconi
Rolando
How I can make the first windows ?

Image


Can you post here a test sample please


My test ( not run)
Code: Select all  Expand view
// FWH Class TOutLook2003

#include "FiveWin.ch"
#include "Splitter.ch"
#include "OutLook.ch"

//----------------------------------------------------------------------------//

function Main()

   local oWnd, oOutLook2003, oStatusBar, oSplit, cCombo, oRad, nValue := 1
   local oFont, oExBar, oPanel1, oPanel2, bClick := { | o | MsgInfo( o:GetText() ) }
   local oBar

   DEFINE WINDOW oWnd TITLE "FWH new Class TOutLook2003" MDI

   DEFINE BUTTONBAR oBar OF oWnd SIZE 60, 60 2007

    DEFINE BUTTON OF oBar ACTION oDlg1(oWnd,oBar) ;
      RESOURCE "attach" PROMPT "Attach" TOOLTIP "Attach"

   DEFINE BUTTON OF oBar ACTION MsgInfo( "calendar" ) ;
   RESOURCE "calendar" PROMPT "Calendar" WHEN .F. TOOLTIP "Calendar"


   DEFINE OUTLOOK2003 oOutLook2003 OF oWnd ;
      PROMPTS "Mail", "Calendar", "Contacts", "" ;
      BITMAPS "..\bitmaps\mail.bmp", "..\bitmaps\calendar.bmp", "..\bitmaps\notes.bmp"

   oWnd:oLeft = nil // Because the splitter is going to control the resize


   SetParent( oOutLook2003:hWnd, oWnd:hWnd )

   oWnd:oClient = nil

   @ 0, 191 SPLITTER oSplit ;
      VERTICAL _3DLOOK ;
      PREVIOUS CONTROLS oOutLook2003 ;
      HINDS CONTROLS oWnd:oWndClient ;
      SIZE 4, oWnd:nHeight - 70 PIXEL ;
      OF oWnd

   SetParent( oSplit:hWnd, oWnd:hWnd )

   ACTIVATE WINDOW oWnd ;
      ON RESIZE ( oSplit:Adjust(),;
                  WndLeft( oWnd:oWndClient:hWnd, oSplit:nRight + 1 ),;
                  WndWidth( oWnd:oWndClient:hWnd, oWnd:nWidth - oOutLook2003:nWidth - 23 ) )

return nil



//----------------------------------------------------------------------------//



  function oDlg1(oWnd,oBar)

     Local oDlg1,obar1
     Local  aClient := GetClientRect (oWnd:hWnd )

       DEFINE DIALOG  oDlg1   of oWnd:oWndClient
       oDlg1:nStyle := WS_CHILD
       oDlg1:nTop    = oBar:nHeight
       oDlg1:nLeft   = 0
       oDlg1:nBottom = aClient[3] - 1
       oDlg1:nRight  = aClient[4]

        oDlg1:SetColor( CLR_WHITE, CLR_WHITE )


        DEFINE BUTTONBAR oBar1 OF  oDlg1 SIZE 60, 60 2007

        ACTIVATE DIALOG oDlg1


       return nil



 

Re: Ejemplo de agenda telefonica

PostPosted: Tue Sep 15, 2015 3:43 am
by RSalazarU
Jose luis:

Las pestañas las hago con el control TTabs()
Code: Select all  Expand view

   oRS:oWnd:oBottom := TTabs():New( 0, 0, {"TODOS","A","B","C","D","E","F","G","H","I","J","K","L","M","N","Ñ","O","P","Q","R","S","T","U","V","W","X","Y","Z"}, , oRS:oWnd, 1,,, .T.,,, 25,,)
   oRS:oWnd:oBottom:bAction:={|nOption, nOldOption, oTabs|oTabs:CARGO:cLetra:=if(nOption=1,"",oTabs:aPrompts[nOption]), EVAL(oTabs:CARGO:oBrw:bGotFocus,oTabs:CARGO:oBrw) }
   oRS:oWnd:oBottom:nOrientation := 2
   oRS:oWnd:oBottom:oFont:=TFont():New("Ms Sans Serif", 0, -9 )
   oRS:oWnd:oBottom:oBold:=TFont():New("Ms Sans Serif", 1, -10, , .T. )
   oRS:oWnd:oBottom:Default()
   oRS:oWnd:oBottom:CARGO := oRS
 

Por favor me podrias explicar a que se refieren los siguientes puntos:
-Control de miembros: esto creo que es el objetivo de la agenda
-Ofrendas: como haces la capturas de los datos de ofrendas
-Clasificaciones: ??
-Agrupaciones: ??
-Crecimiento eclesiastico: ??

Silvio:
Revisare tu codigo, tratare de poner un ejemplo

Re: Ejemplo de agenda telefonica

PostPosted: Tue Sep 15, 2015 4:15 am
by joseluisysturiz
RSalazarU wrote:Jose luis:

Las pestañas las hago con el control TTabs()
Code: Select all  Expand view

   oRS:oWnd:oBottom := TTabs():New( 0, 0, {"TODOS","A","B","C","D","E","F","G","H","I","J","K","L","M","N","Ñ","O","P","Q","R","S","T","U","V","W","X","Y","Z"}, , oRS:oWnd, 1,,, .T.,,, 25,,)
   oRS:oWnd:oBottom:bAction:={|nOption, nOldOption, oTabs|oTabs:CARGO:cLetra:=if(nOption=1,"",oTabs:aPrompts[nOption]), EVAL(oTabs:CARGO:oBrw:bGotFocus,oTabs:CARGO:oBrw) }
   oRS:oWnd:oBottom:nOrientation := 2
   oRS:oWnd:oBottom:oFont:=TFont():New("Ms Sans Serif", 0, -9 )
   oRS:oWnd:oBottom:oBold:=TFont():New("Ms Sans Serif", 1, -10, , .T. )
   oRS:oWnd:oBottom:Default()
   oRS:oWnd:oBottom:CARGO := oRS
 

Por favor me podrias explicar a que se refieren los siguientes puntos:
-Control de miembros: esto creo que es el objetivo de la agenda
-Ofrendas: como haces la capturas de los datos de ofrendas
-Clasificaciones: ??
-Agrupaciones: ??
-Crecimiento eclesiastico: ??

Silvio:
Revisare tu codigo, tratare de poner un ejemplo


Saludos Salazar, luego revisare lo que me comentas ya que me llamo bastante la atencion el diseño de la agenda, sobre todo esa parte del spiral, muy original, te respondo en relacion al sistema de iglesias:

-Control de miembros: es una ficha con todas las propiedades de cada miembro, mucho mas amplia que la que tienes ya que abarca muchos detalles personales, si lo deseas te la puedo compartir visualmente por privado ya que son varias en folder.
-Ofrendas: en la parte de las ofrendas se carga por servicios y en las celulas de la iglesia (ofrendas, diezmos, etc), eso es un control administrativo.
-Clasificaciones /agrupaciones: son relativamente iguales, son formas de clasificar o agrupar los miembros para un mejor control y para los reportes, un ejemplo es: GRUPO DE DANZAS, DIACONOS, PASTORES, es una propiedad como muchas otras que puede tener un miembro relacionado hasta con actividades dentro o fuera de la iglesia.
-Crecimiento eclesiastico: estas son etapas dentro de la iglesia, digamos como niño, adolecente, joven, adulto, anciano, puedes empezar como un miembro comun y llegar a traves de estudios y preparaciones hasta ser pastor, diacono, etc. Para esto debes pasar por entrenamientos, estudios eclesiasticos y evaluaciones por los altos directivos de la iglesia.

Espero haberte ayudado y aclarado las dudas, cualquier cosa puedes escribirme a mi privado y compartimos detalles, gracias, saludos... :shock:

Re: Ejemplo de agenda telefonica

PostPosted: Tue Sep 15, 2015 6:36 pm
by RSalazarU
Jose Luis:

Agradesco tu respuesta.

Por favor me puedes dar tu correo (no lo pude obtener mirando tu profile).

Estoy en el tema de la base de datos de miembros de una iglesia, por lo que toda informacion que se refiera a esto me interesa. Sin embargo recien estoy empezando; algunos datos los manejan, en forma confidsencial, la administracion y los pastores.

Respecto a la espiral, te cuento que es algo sencillo de hacer, Al TSplitter() le coloque un TBrush() que tiene un BITMAP(yo lo hice desde recurso) con un solo "Gancho" (espira); el resto es automatico.
Code: Select all  Expand view

   oRS:oSplit:=TSplitter():New(1,oRS:oWnd:oLeft:nWidth+1,.T., {oRS:oWnd:oLeft},.F.,{oRS:oWnd:oRight}, .T., {|| 100}, {|| 1},oRS:oWnd,, W_SPLITER, 0, .T., .T.,, .F., .T. )
   oRS:oSplit:oBrush := TBrush():New( ,,,"Gancho",,"RESIZE")
   oRS:oSplit:oBrush:Resize( oRS:oSplit,, W_SPLITER-2 )
 


Rolando.

Re: Ejemplo de agenda telefonica

PostPosted: Tue Sep 15, 2015 9:12 pm
by joseluisysturiz
RSalazarU wrote:Jose Luis:

Agradesco tu respuesta.

Por favor me puedes dar tu correo (no lo pude obtener mirando tu profile).

Estoy en el tema de la base de datos de miembros de una iglesia, por lo que toda informacion que se refiera a esto me interesa. Sin embargo recien estoy empezando; algunos datos los manejan, en forma confidsencial, la administracion y los pastores.

Respecto a la espiral, te cuento que es algo sencillo de hacer, Al TSplitter() le coloque un TBrush() que tiene un BITMAP(yo lo hice desde recurso) con un solo "Gancho" (espira); el resto es automatico.
Code: Select all  Expand view

   oRS:oSplit:=TSplitter():New(1,oRS:oWnd:oLeft:nWidth+1,.T., {oRS:oWnd:oLeft},.F.,{oRS:oWnd:oRight}, .T., {|| 100}, {|| 1},oRS:oWnd,, W_SPLITER, 0, .T., .T.,, .F., .T. )
   oRS:oSplit:oBrush := TBrush():New( ,,,"Gancho",,"RESIZE")
   oRS:oSplit:oBrush:Resize( oRS:oSplit,, W_SPLITER-2 )
 


Rolando.


Saludos Rolando, mi correo es joseluisysturiz@yahoo.com, skype: joseluisy, gracias.

Re: Ejemplo de agenda telefonica

PostPosted: Tue Sep 15, 2015 10:21 pm
by cnavarro
RSalazarU wrote:
Respecto a la espiral, te cuento que es algo sencillo de hacer, Al TSplitter() le coloque un TBrush() que tiene un BITMAP(yo lo hice desde recurso) con un solo "Gancho" (espira); el resto es automatico.
Code: Select all  Expand view

   oRS:oSplit:=TSplitter():New(1,oRS:oWnd:oLeft:nWidth+1,.T., {oRS:oWnd:oLeft},.F.,{oRS:oWnd:oRight}, .T., {|| 100}, {|| 1},oRS:oWnd,, W_SPLITER, 0, .T., .T.,, .F., .T. )
   oRS:oSplit:oBrush := TBrush():New( ,,,"Gancho",,"RESIZE")
   oRS:oSplit:oBrush:Resize( oRS:oSplit,, W_SPLITER-2 )
 


Rolando.


A mi tambien me habia llamado la atencion el tema del "muelle"
Tu solucion, muy buena
Gracias

Re: Ejemplo de agenda telefonica

PostPosted: Tue Sep 15, 2015 10:34 pm
by joseluisysturiz
A eso se le llama..INGENIO..algo relativamente sencillo..y mira como llama tanto la atencion, asi es el mundo de la programacion, gracias por el tips, tratare de implementar algo parecdio haber como me va, gracias, saludos... :shock: