Gestion de Clinicas

  • Upload
    jfmega

  • View
    222

  • Download
    0

Embed Size (px)

Citation preview

  • 8/18/2019 Gestion de Clinicas

    1/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 1

    Las ventanas van a ser llamadas con el comando opensheet, siguiendo la siguiente sintaxis:

    opensheet(w_especialidad,w_principal,5,original!)

    Donde:

      w_especialidad, es el nombre de la ventana a ser abierta

      w_principal, es el nombre de la ventana que va a contener a la ventana abierta. Casi

    siempre es la ventana principal que contiene al men ú.

      5, es la posición en donde se va a colocar todas las ventanas abiertas, en este caso es

    la posición n úmero 5, si consideramos que la posición 1 es “Archivo”, la posici ón 2 es

    “Edici ón” y así sucesivamente

      Original!, es el modo en que va a ser abierta, puede ser tambi én cascade! o layered!

  • 8/18/2019 Gestion de Clinicas

    2/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 2

    w_especialidad Open()

    dw_especialidad.SetTransObject(sqlca)dw_especialidad.Retrieve()

    tab_1.tabpage_1.dw_especialidad_1.SetTransObject(sqlca)tab_1.tabpage_1.dw_especialidad_1.Retrieve()

    dw_espec ial idad i temfocuschanged()pb_borrar.enabled=truetab_1.tabpage_1.dw_especialidad_1.scrolltorow(dw_especialidad.getrow())

    Botones de Navegaci ón

    Cb_1(|

  • 8/18/2019 Gestion de Clinicas

    3/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 3

    cb_3(>) click()long nfilas,ntotalfilasntotalfilas=tab_1.tabpage_1.dw_especialidad_1.rowcount()nfilas=tab_1.tabpage_1.dw_especialidad_1.getrow()

    if nfilas < ntotalfilas thentab_1.tabpage_1.dw_especialidad_1.ScrollNextRow()cb_1.enabled=truecb_2.enabled=truecb_3.enabled=true

    cb_4.enabled=trueelse

    cb_3.enabled=falsecb_4.enabled=false

    end if 

    cb_4(>|) click()long nfilasnfilas=tab_1.tabpage_1.dw_especialidad_1.RowCount()tab_1.tabpage_1.dw_especialidad_1.ScrolltoRow(nfilas)cb_1.enabled=truecb_2.enabled=truecb_3.enabled=falsecb_4.enabled=false

    Picture Botton

    Pb_adicionar(añadir) click()tab_1.tabpage_1.dw_especialidad_1.enabled = trueinteger n, numerodw_especialidad.enabled = false

    SELECT MAX(esp_numero)INTO :numeroFROM especialidad;

    IF ISNULL(numero) THEN numero=0numero = numero + 1

    n=tab_1.tabpage_1.dw_especialidad_1.insertrow(0)tab_1.tabpage_1.dw_especialidad_1.scrolltorow(n)

    tab_1.tabpage_1.dw_especialidad_1.setitem(n,"esp_numero",numero)tab_1.tabpage_1.dw_especialidad_1.setfocus()

    pb_adicionar.enabled=falsepb_borrar.enabled=falsepb_modificar.enabled=falsepb_Cancelar.enabled=trae

    pb_modificar click()tab_1.tabpage_1.dw_especialidad_1.enabled=truetab_1.tabpage_1.dw_especialidad_1.setfocus()pb_adicionar.enabled=falsepb_borrar.enabled=falsePb_Cancelar.enabled=trae

  • 8/18/2019 Gestion de Clinicas

    4/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 4

    Pb_grabar Click()integer a,ba=messagebox("Sistema de Gesti ón de Clínica","¿Datos Corectos?”,Question!,YesNo!)

    if a = 1 thenb=tab_1.tabpage_1.dw_especialidad_1.update()if b=1 then

    commit using sqlca;else

    rollback using sqlca;end if 

    dw_especialidad.retrieve()tab_1.tabpage_1.dw_especialidad_1.retrieve()pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=falsetab_1.tabpage_1.dw_especialidad_1.enabled=false

    end if dw_especialidad.enabled = truedw_especialidad.triggerevent(rowfocuschanged!)

    pb_borrar click()integer fila,bfila=messagebox("Sistema de Gestión de Clínica"," ¿Desea Eliminar elRegistro?",Question!,yesno!)if fila =1 then

    dw_especialidad.deleterow(tab_1.tabpage_1.dw_especialidad_1.getrow())b=dw_especialidad.update()if b=1 then

    commit using sqlca;else

    rollback using sqlca;end if 

    end if dw_especialidad.retrieve()tab_1.tabpage_1.dw_especialidad_1.retrieve()

    pb_cancelar click()tab_1.tabpage_1.dw_especialidad_1.enabled=falsetab_1.tabpage_1.dw_especialidad_1.retrieve()dw_especialidad.enabled = truepb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false

    pb_cerrar click()close(w_especialidad)

    sle_1.text modified()

    string espinteger regesp="upper(esp_descripcion) like '"+ upper(sle_1.text)+"%'"reg=dw_especialidad.find(esp,1,dw_especialidad.rowcount())if reg=0 then

    messagebox("Sistema de Gestión de Clínica","No Existe esta Especialidad")else

    dw_especialidad.scrolltorow(reg)

    dw_especialidad.SetRowFocusIndicator(hand!)end if 

  • 8/18/2019 Gestion de Clinicas

    5/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 5

    Tabla Seleccionada (Especialidad)

    DataWindow Especialidad(Vista)

  • 8/18/2019 Gestion de Clinicas

    6/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 6

    DataWindow Especialidad_1(Edici ón)

  • 8/18/2019 Gestion de Clinicas

    7/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 7

    w _pac iente Open()dw_paciente.SetTransObject(sqlca)dw_paciente.Retrieve()

    tab_1.tabpage_1.dw_paciente_1.SetTransObject(sqlca)tab_1.tabpage_1.dw_paciente_1.Retrieve()

    dw_paciente itemfocuschanged()pb_borrar.enabled=truetab_1.tabpage_1.dw_paciente_1.scrolltorow(dw_paciente.getrow())

    Picture Botton

    Pb_adicionar(añadir) click()tab_1.tabpage_1.dw_paciente_1.enabled = trueinteger n,numerodw_paciente.enabled = false

    SELECT MAX(pac_numero)INTO :numero

    FROM paciente;

    IF ISNULL(numero) THEN numero=0

    numero = numero + 1

    n=tab_1.tabpage_1.dw_paciente_1.insertrow(0)

    tab_1.tabpage_1.dw_paciente_1.scrolltorow(n)tab_1.tabpage_1.dw_paciente_1.setitem(n,"pac_numero",numero)tab_1.tabpage_1.dw_paciente_1.setfocus()pb_adicionar.enabled=false

    dw_paciente_1

    dw_paciente

    Picture Button

  • 8/18/2019 Gestion de Clinicas

    8/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 8

    pb_borrar.enabled=falsepb_modificar.enabled=falsepb_Cancelar.enabled=true

    pb_modificar click()tab_1.tabpage_1.dw_paciente_1.enabled=truetab_1.tabpage_1.dw_paciente_1.setfocus()pb_adicionar.enabled=falsepb_borrar.enabled=falsepb_Cancelar.enabled=true

    Pb_grabar Click()integer a,ba=messagebox("Sistema de Gestión de Clínica"," ¿Datos Corectos? ",Question!,YesNo!)

    if a = 1 thenb=tab_1.tabpage_1.dw_paciente_1.update()if b=1 then

    commit using sqlca;else

    rollback using sqlca;end if dw_paciente.retrieve()tab_1.tabpage_1.dw_paciente_1.retrieve()pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=falsetab_1.tabpage_1.dw_paciente_1.enabled=false

    end if dw_paciente.enabled = truedw_paciente.triggerevent(rowfocuschanged!)

    pb_borrar click()integer fila,bfila=messagebox("Sistema de Gestión de Clínica"," ¿Desea Eliminar elRegistro?",Question!,yesno!)

    if fila =1 thendw_paciente.deleterow(tab_1.tabpage_1.dw_paciente_1.getrow())b=dw_paciente.update()if b=1 then

    commit using sqlca;else

    rollback using sqlca;end if 

    end if dw_paciente.retrieve()tab_1.tabpage_1.dw_paciente_1.retrieve()

    pb_cancelar click()tab_1.tabpage_1.dw_paciente_1.enabled=false

    tab_1.tabpage_1.dw_paciente_1.retrieve()dw_paciente.enabled = truepb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false

    pb_cerrar click()close(w_paciente)

  • 8/18/2019 Gestion de Clinicas

    9/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 9

    sle_1.text modified()string pacinteger reg

    pac="upper(pac_apellido) like '"+ upper(sle_1.text)+"%'"reg=dw_paciente.find(pac,1,dw_paciente.rowcount())if reg=0 then

    messagebox("Sistema de Gestión de Clínica","Paciente no Registrado")else

    dw_paciente.scrolltorow(reg)

    dw_paciente.SetRowFocusIndicator(hand!)end if 

  • 8/18/2019 Gestion de Clinicas

    10/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 10

    Tabla Seleccionada (Pac iente)

    DataWindow Paciente(Vista)

  • 8/18/2019 Gestion de Clinicas

    11/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 11

    DataWindow Paciente(Edici ón)

  • 8/18/2019 Gestion de Clinicas

    12/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 12

    w_doctor Open()dw_doctor.SetTransObject(sqlca)dw_ doctor.Retrieve()

    tab_1.tabpage_1.dw_ doctor _1.SetTransObject(sqlca)tab_1.tabpage_1.dw_ doctor _1.Retrieve()

    dw_paciente rowfocuschanged()pb_borrar.enabled=truetab_1.tabpage_1.dw_doctor_1.scrolltorow(dw_doctor.getrow())

    Picture Botton

    Pb_adicionar(añadir) click()tab_1.tabpage_1.dw_doctor_1.enabled = trueinteger n,numerodw_doctor.enabled = false

    SELECT MAX(doc_numero)INTO :numeroFROM doctor;

    IF ISNULL(numero) THEN numero=0numero = numero + 1n=tab_1.tabpage_1.dw_doctor_1.insertrow(0)

    tab_1.tabpage_1.dw_doctor_1.scrolltorow(n)tab_1.tabpage_1.dw_doctor_1.setitem(n,"doc_numero",numero)tab_1.tabpage_1.dw_doctor_1.setfocus()

    pb_adicionar.enabled=false

    pb_borrar.enabled=falsepb_modificar.enabled=falsepb_Cancelar.enabled=trae

  • 8/18/2019 Gestion de Clinicas

    13/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 13

    pb_modificar click()tab_1.tabpage_1.dw_doctor_1.enabled=truetab_1.tabpage_1.dw_doctor_1.setfocus()pb_adicionar.enabled=falsepb_borrar.enabled=falsepb_Cancelar.enabled=true

    Pb_grabar Click()integer a,b

    a=messagebox("Sistema de Gestión de Clínica"," ¿Datos Corectos? ",Question!,YesNo!)if a = 1 then

    b=tab_1.tabpage_1.dw_doctor_1.update()if b=1 then

    commit using sqlca;else

    rollback using sqlca;end if dw_doctor.retrieve()tab_1.tabpage_1.dw_doctor_1.retrieve()

    pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=falsetab_1.tabpage_1.dw_doctor_1.enabled=false

    end if 

    dw_doctor.enabled = truedw_doctor.triggerevent(rowfocuschanged!)

    pb_borrar click()integer fila,b

    fila=messagebox("Sistema de Gestión de Clínica"," ¿Desea Eliminar elRegistro?",Question!,yesno!)

    if fila =1 thendw_doctor.deleterow(tab_1.tabpage_1.dw_doctor_1.getrow())b=dw_doctor.update()if b=1 then

    commit using sqlca;else

    rollback using sqlca;end if 

    end if dw_doctor.retrieve()tab_1.tabpage_1.dw_doctor_1.retrieve()

    pb_cancelar click()tab_1.tabpage_1.dw_doctor_1.enabled=false

    tab_1.tabpage_1.dw_doctor_1.retrieve()dw_doctor.enabled = truepb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false

    pb_cerrar click()close(w_doctor)

  • 8/18/2019 Gestion de Clinicas

    14/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 14

    sle_1.text modified()string docinteger reg

    doc="upper(compute_1) like '"+ upper(sle_1.text)+"%'"reg=dw_doctor.find(doc,1,dw_doctor.rowcount())if reg=0 then

    messagebox("Sistema de Gestión de Clínica","Doctor no Registrado")else

    dw_doctor.scrolltorow(reg)

    dw_doctor.SetRowFocusIndicator(hand!)end if 

  • 8/18/2019 Gestion de Clinicas

    15/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 15

    Tabla Seleccionada (Doctor)

    DataWindow Doctor(Vista)

  • 8/18/2019 Gestion de Clinicas

    16/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 16

    DataWindow para el DropDownDW del DataWindow Doctor_1

    Eliminar las cabeceras y el campo esp_numero, solamente quedando el campoesp_descripcion

    DataWindow Doctor(Edición)

  • 8/18/2019 Gestion de Clinicas

    17/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 17

    Style Type DropDrowDW (esp_numero)

    Style Type Drop DrowListBox (doc_estado)

  • 8/18/2019 Gestion de Clinicas

    18/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 18

    PROGRAMACION DE PROGRAMAS MEDICOS

    Declare Global Variablesinteger estado,codigo,his_num

    w_pogramacion open()dw_programacion.settransobject(sqlca)dw_programacion.retrieve()

    string a,binteger num

    estado=0

    Declare nombres Cursor for select doc_numero, doc_nombre,doc_apellidofrom doctor where doc_estado='Activo';

    Open nombres;Fetch nombres into :num ,:a ,:b;Do until sqlca.sqlcode=100

    tab_1.tabpage_1.ddlb_2.additem(string(num)+" " +b+" ,"+a)Fetch nombres into :num ,:a ,:b;

    LoopClose nombres;

    Declare con Cursor for select con_numero,con_descripcion

    from consultorio;Open con;Fetch con into :num,:a;Do until sqlca.sqlcode=100

    tab_1.tabpage_1.ddlb_1.additem(string(num)+" "+a)Fetch con into :num,:a;

    LoopClose con;

    tab_1.tabpage_1.em_1.text=string(today())

    dw_programacion

    Sle_2

    ddlb_1

    Sle_1

    ddlb_2   ddlb_3

    em_1

    em_2

  • 8/18/2019 Gestion de Clinicas

    19/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 19

    dw_programacion rowfocuschanged()pb_borrar.enabled=true

    Pb_adicionar click()integer numero

    SELECT MAX(pro_numero)INTO :numeroFROM programacion;

    estado=1

    IF ISNULL(numero) THEN numero=0numero = numero + 1tab_1.tabpage_1.sle_2.text=string(numero)tab_1.tabpage_1.sle_2.enabled=true

    tab_1.tabpage_1.ddlb_1.enabled=truetab_1.tabpage_1.ddlb_2.enabled=truetab_1.tabpage_1.ddlb_3.enabled=truetab_1.tabpage_1.em_1.enabled=truetab_1.tabpage_1.em_2.enabled=true

    pb_borrar.enabled=falsepb_modificar.enabled=falsepb_grabar.enabled=truepb_Cancelar.enabled=true

    pb_modificar click()pb_adicionar.enabled=falsepb_grabar.enabled=truepb_borrar.enabled=falsepb_Cancelar.enabled=true

    estado=0

    integer cod_pro,cod_doc,cod_con,citas,ndate fechastring turno,con_nom,doc_nom,doc_apelong row

    row = dw_programacion.getrow()cod_pro=dw_programacion.GetItemNumber(row,"programacion_pro_numero")cod_con=dw_programacion.GetItemNumber(row,"consultorio_con_numero")con_nom=dw_programacion.GetItemString(row,"consultorio_con_descripcion")doc_ape=dw_programacion.GetItemString(row,"doctor_doc_apellido")doc_nom=dw_programacion.GetItemString(row,"doctor_doc_nombre")cod_doc=dw_programacion.GetItemNumber(row,"doctor_doc_numero")fecha=dw_programacion.GetItemDate(row,"programacion_pro_fecha")citas=dw_programacion.GetItemNumber(row,"programacion_pro_ncitas")

    turno=dw_programacion.GetItemString(row,"programacion_pro_turno")

    tab_1.tabpage_1.ddlb_1.enabled=truetab_1.tabpage_1.ddlb_2.enabled=truetab_1.tabpage_1.ddlb_3.enabled=truetab_1.tabpage_1.em_1.enabled=truetab_1.tabpage_1.em_2.enabled=true

    tab_1.tabpage_1.sle_2.text=string(cod_pro)tab_1.tabpage_1.em_1.text=string(fecha)

  • 8/18/2019 Gestion de Clinicas

    20/28

  • 8/18/2019 Gestion de Clinicas

    21/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 21

    tab_1.tabpage_1.em_2.enabled=false

    end if else

    a=messagebox("Sistema de Gesti ón de Clínica","Los Datos ha sido Modificados, ¿EstaSeguro? ",Question!,YesNo!)

    if a = 1 thenupdate "programacion"

    set "con_numero" = :cod_con,"doc_numero" = :cod_doc,  "pro_fecha" = :fecha,"pro_ncitas" = :citas,

    "pro_turno" = :turnowhere "programacion"."pro_numero" = :numero;

    if sqlca.sqlcode 0 thenMessagebox("Sistema de Gestión de Clínica","Imposible Modificar los

    Datos")else

    commit using sqlca;end if 

    dw_programacion.retrieve()dw_programacion.triggerevent(rowfocuschanged!)

    pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=false

    tab_1.tabpage_1.sle_2.text=""tab_1.tabpage_1.sle_2.enabled=falsetab_1.tabpage_1.ddlb_1.text=""tab_1.tabpage_1.ddlb_1.enabled=falsetab_1.tabpage_1.ddlb_2.text=""tab_1.tabpage_1.ddlb_2.enabled=falsetab_1.tabpage_1.ddlb_3.text=""tab_1.tabpage_1.ddlb_3.enabled=false

    tab_1.tabpage_1.em_1.text=""tab_1.tabpage_1.em_1.enabled=falsetab_1.tabpage_1.em_2.text=""tab_1.tabpage_1.em_2.enabled=false

    end if end if 

    pb_borrar click()integer fila,b,codigolong row

    fila=messagebox("Sistema de Gestión de Clínica"," ¿Desea Eliminar elRegistro?",Question!,yesno!)if fila =1 then

    row = dw_programacion.getrow()codigo=dw_programacion.GetItemNumber(row,"programacion_pro_numero")

    Delete from programacion where pro_numero = :codigo;commit using sqlca;

    end if dw_programacion.retrieve()

  • 8/18/2019 Gestion de Clinicas

    22/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 22

    pb_cancelar click()dw_programacion.retrieve()pb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false

    pb_cerrar click()close(w_programacion)

    sle_1 modified()string docinteger reg

    doc="upper(compute_1) like '"+ upper(sle_1.text)+"%'"reg=dw_programacion.find(doc,1,dw_programacion.rowcount())if reg=0 then

    messagebox("Sistema de Gestión de Clínica","Doctor no Programado")else

    dw_programacion.scrolltorow(reg)dw_programacion.SetRowFocusIndicator(hand!)

    end if 

    Este datawindows de nombre d_programacion, contiene e campos que est án invisibles, estosson: doctor_doc_numero, consultorio_con_numero, consultorio_con_descripcion,doctor_doc_nombre, doctor_doc_apellido.

     Apellidos y Nombres es un campo calculado.(computed field)

  • 8/18/2019 Gestion de Clinicas

    23/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 23

    GENERACION DE CITAS MÉ DICAS

    w_consulta open()dw_consulta.settransobject(sqlca)dw_consulta.retrieve()

    string a,binteger num

    Declare nombres Cursor for select pac_numero, pac_nombre,pac_apellidofrom paciente;

    Open nombres;

    Fetch nombres into :num ,:a ,:b;Do until sqlca.sqlcode=100

    tab_1.tabpage_1.ddlb_1.additem(string(num)+" " +b+" ,"+a)Fetch nombres into :num ,:a ,:b;

    LoopClose nombres;

    Declare con Cursor for select con_numero,con_descripcionfrom consultorio;Open con;Fetch con into :num,:a;Do until sqlca.sqlcode=100

    tab_1.tabpage_1.ddlb_2.additem(string(num)+" "+a)Fetch con into :num,:a;

    LoopClose con;

    tab_1.tabpage_1.em_1.text=string(today())

    sle_1 modified()string coninteger reg

    con="string(citas_cit_numero) like '"+ sle_1.text+"%'"

    dw_consulta

    Sle_2

    Sle_1

    Sle_3

    ddlb_1

    ddlb_2

    em_1

    cb_1

  • 8/18/2019 Gestion de Clinicas

    24/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 24

    reg=dw_consulta.find(con,1,dw_consulta.rowcount())if reg=0 then

    messagebox("Sistema de Gestión de Clínica","Consulta no Registrada")else

    dw_consulta.scrolltorow(reg)dw_consulta.SetRowFocusIndicator(hand!)

    end if 

    pb_adicionar click()integer numero

    SELECT MAX(cit_numero)INTO :numeroFROM citas;

    estado=1

    IF ISNULL(numero) THEN numero=0numero = numero + 1tab_1.tabpage_1.sle_2.text=string(numero)tab_1.tabpage_1.sle_2.enabled=truetab_1.tabpage_1.sle_3.enabled=true

    tab_1.tabpage_1.ddlb_1.enabled=truetab_1.tabpage_1.ddlb_2.enabled=truetab_1.tabpage_1.em_1.enabled=true

    pb_borrar.enabled=falsepb_modificar.enabled=falsepb_grabar.enabled=truepb_Cancelar.enabled=true

    pb_modificar click()pb_adicionar.enabled=falsepb_grabar.enabled=truepb_borrar.enabled=false

    pb_Cancelar.enabled=true

    estado=0

    integer cod_cit,cod_pac,cod_con,n,cod_hisdate fechastring con_nom,pac_nom,pac_apelong row

    row = dw_consulta.getrow()cod_cit=dw_consulta.GetItemNumber(row,"citas_cit_numero")cod_con=dw_consulta.GetItemNumber(row,"consultorio_con_numero")cod_pac=dw_consulta.GetItemNumber(row,"paciente_pac_numero")cod_his=dw_consulta.GetItemNumber(row,"citas_his_numero")

    con_nom=dw_consulta.GetItemString(row,"consultorio_con_descripcion")pac_ape=dw_consulta.GetItemString(row,"paciente_pac_apellido")pac_nom=dw_consulta.GetItemString(row,"paciente_pac_nombre")fecha=dw_consulta.GetItemDate(row,"citas_cit_fecha")

    tab_1.tabpage_1.sle_2.enabled=truetab_1.tabpage_1.sle_3.enabled=truetab_1.tabpage_1.ddlb_1.enabled=true

    tab_1.tabpage_1.ddlb_2.enabled=truetab_1.tabpage_1.em_1.enabled=true

  • 8/18/2019 Gestion de Clinicas

    25/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 25

    tab_1.tabpage_1.sle_2.text=string(cod_cit)tab_1.tabpage_1.sle_3.text=string(cod_his)tab_1.tabpage_1.em_1.text=string(fecha)

    tab_1.tabpage_1.ddlb_1.text=(string(cod_pac)+" "+pac_ape+", "+pac_nom)tab_1.tabpage_1.ddlb_2.text=(string(cod_con)+" "+con_nom)tab_1.tabpage_1.ddlb_1.enabled=false

    pb_grabar click()integer a,numero,posicion,longitud,cod_pac,cod_con,his_clistring consultorio,paciente,turno,nom,apedate fecha

    numero=integer(tab_1.tabpage_1.sle_2.text)paciente=tab_1.tabpage_1.ddlb_1.textconsultorio=tab_1.tabpage_1.ddlb_2.textfecha=date(tab_1.tabpage_1.em_1.text)his_cli=integer(tab_1.tabpage_1.sle_3.text)

    longitud=len(consultorio)posicion=pos(consultorio,' ',1)cod_con=integer(mid(consultorio,1,posicion - 1))

    longitud=len(paciente)posicion=pos(paciente,' ',1)cod_pac=integer(mid(paciente,1,posicion - 1))

    if estado=1 thena=messagebox("Sistema de Gestión de Clínica"," ¿Datos Corectos? ",Question!,YesNo!)

    if a = 1 thenINSERT INTO citas( cit_numero,his_numero,pac_numero,con_numero,cit_fecha )VALUES (:numero,:his_cli,:cod_pac,:cod_con,:fecha );

    insert into det_cita(cit_numero)values(:numero);

    if sqlca.sqlcode 0 thenMessagebox("Sistema de Gesti ón de Clínica","Imposible Grabar, Revise los Datos")else

    commit using sqlca;end if 

    dw_consulta.retrieve()dw_consulta.triggerevent(rowfocuschanged!)

    pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=false

    tab_1.tabpage_1.sle_2.text=""tab_1.tabpage_1.sle_2.enabled=falsetab_1.tabpage_1.sle_3.text=""tab_1.tabpage_1.sle_3.enabled=falsetab_1.tabpage_1.ddlb_1.text=""tab_1.tabpage_1.ddlb_1.enabled=falsetab_1.tabpage_1.ddlb_2.text=""

    tab_1.tabpage_1.ddlb_2.enabled=falsetab_1.tabpage_1.em_1.text=string(today())

  • 8/18/2019 Gestion de Clinicas

    26/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 26

    tab_1.tabpage_1.em_1.enabled=falseend if 

    elsea=messagebox("Sistema de Gesti ón de Clínica","Los Datos ha sido Modificados, ¿EstaSeguro? ",Question!,YesNo!)

    if a = 1 thenupdate "citas"set "pac_numero" = :cod_pac,"his_numero" = :his_cli,"con_numero" = :cod_con, "cit_fecha" = :fecha

    where "citas"."cit_numero" = :numero;

    if sqlca.sqlcode 0 thenMessagebox("Sistema de Gestión de Clínica","Imposible Modificar los Datos")else

    commit using sqlca;end if 

    dw_consulta.retrieve()dw_consulta.triggerevent(rowfocuschanged!)

    pb_adicionar.enabled=truepb_modificar.enabled=truepb_borrar.enabled=truepb_cancelar.enabled=false

    tab_1.tabpage_1.sle_2.text=""tab_1.tabpage_1.sle_2.enabled=falsetab_1.tabpage_1.sle_3.text=""tab_1.tabpage_1.sle_3.enabled=falsetab_1.tabpage_1.ddlb_1.text=""tab_1.tabpage_1.ddlb_1.enabled=falsetab_1.tabpage_1.ddlb_2.text=""tab_1.tabpage_1.ddlb_2.enabled=falsetab_1.tabpage_1.em_1.text=string(today())tab_1.tabpage_1.em_1.enabled=false

    end if end if 

    pb_borrar click()integer b,codlong row

    b=messagebox("Sistema de Gesti ón de Clínica"," ¿Desea Eliminar la CitaM édica?",Question!,yesno!)if b =1 then

    row = dw_consulta.getrow()cod=dw_consulta.GetItemNumber(row,"citas_cit_numero")

    Delete from citas where cit_numero = :cod;

    commit using sqlca;

    Delete from historial where his_numero = :cod;commit using sqlca;

    end if dw_consulta.retrieve()

  • 8/18/2019 Gestion de Clinicas

    27/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    Ing. Wagner Bances Puémape 27

    pb_cancelar click()integer num_his

    num_his=integer(tab_1.tabpage_1.sle_3.text)if num_his 0 then

    delete from historial where his_numero=:num_his;messagebox("Sistema de Gestion de Clínica","La Historia Clinica Generada ha sido

    Eliminada")end if 

    dw_consulta.retrieve()pb_adicionar.enabled=truepb_borrar.enabled=truepb_modificar.enabled=truepb_Cancelar.enabled=false

    tab_1.tabpage_1.sle_2.text=""tab_1.tabpage_1.sle_2.enabled=falsetab_1.tabpage_1.sle_3.text=""tab_1.tabpage_1.sle_3.enabled=falsetab_1.tabpage_1.em_1.text=""tab_1.tabpage_1.em_1.enabled=falsetab_1.tabpage_1.ddlb_1.text=""tab_1.tabpage_1.ddlb_1.enabled=falsetab_1.tabpage_1.ddlb_2.text=""tab_1.tabpage_1.ddlb_2.enabled=false

    pb_cerrar click()close(w_consulta)

    tab_1.tabpage_1.cb_1 click()integer numero

    SELECT MAX(his_numero)INTO :numeroFROM historial;

    IF ISNULL(numero) THEN numero=0numero = numero + 1tab_1.tabpage_1.sle_3.text=string(numero)

    insert into historial(his_numero)values(:numero);if sqlca.sqlcode 0 then

    Messagebox("Sistema de Gesti ón de Clínica","La Historia Clínica no se Genero")else

    commit using sqlca;Messagebox("Sistema de Gestión de Clínica","Historia Clínica Generada")

    end if 

    tab_1.tabpage_1.ddlb_1 click()integer numero,posicion,longitud,cod_pac,his_cli,codigo,codigo_historiastring paciente

    paciente=tab_1.tabpage_1.ddlb_1.text

    longitud=len(paciente)posicion=pos(paciente,' ',1)

    cod_pac=integer(mid(paciente,1,posicion - 1))

  • 8/18/2019 Gestion de Clinicas

    28/28

    LEP IV – Power Builder Instituto Superior Tecnológico “ ABACO”

    select cit_numero,his_numero,pac_numero  into :numero,:his_cli,:codigo  from citas  where pac_numero = :cod_pac;

    codigo_historia=his_cli

    if codigo_historia=0 thenmessagebox("Sistema de Gestión de Clínica","No tiene Historia Clinica, Generela Por 

    Favor!")tab_1.tabpage_1.cb_1.setfocus()

    elsetab_1.tabpage_1.sle_3.text=string(codigo_historia)

    end if 

    El campo pac_numero de la tabla paciente y el campo con_numero de la tabla consultorio

    estar án ocultas en el datawindows

     Apellidos y Nombres es un campo calculado.(computed field)