Visual Basic - ayuda de optimizacion

Life is soft - evento anual de software empresarial
 
Vista:

ayuda de optimizacion

Publicado por wei men (1 intervención) el 05/02/2013 15:45:15
Hola!

Soy nueva en esto de visual basic 6, me mandaron a actualizar un procedimiento y la verdad que no se, ya que mi conocimiento en visual basic es basico, me ayudarian?

Private Sub Cmdguardar_Click()
On Error Resume Next
Dim u As String, c As String, A As String

If cmbruta.Text = "" Then
MsgBox " Debe Seleccionar el codigo de ruta para la actualizacion en axapta"
End If
If cmbruta.Text = "" Then
MsgBox " Debe Seleccionar el codigo de ruta para la actualizacion en axapta"
End If
If TxtCliente.Text = "" Then
MsgBox " Debe Seleccionar el Cliente a facturar para la actualizacion en axapta"
End If
If cmbciudad.Text = "" Then
MsgBox " Debe Seleccionar la Ciudad para la actualizacion en axapta"
End If
If cmbestado.Text = "" Then
MsgBox " Debe Seleccionar el Estado para la actualizacion en axapta"
End If
u = txtced.Text
c = "ced_pac='" & u & "'"
Adodc1.Recordset.MoveFirst
Adodc1.Recordset.Find c
Txtado.Text = Adodc1.Recordset.Fields("Ced_pac")
If Adodc1.Recordset.EOF = False Then
adoaxb.Recordset.Fields("DATAAREAID") = Trim(Txtempresa.Text)
adoaxb.Recordset.Fields("STATISTICSGROUP") = "M99"
'Crea el registro del reg id
AdoREG.Recordset.AddNew
AdoREG.Recordset.Fields("TXT") = Trim(txtced.Text)
AdoREG.Recordset.Save
'AdoREG.Recordset.RecordCount + 1
adoaxb.Recordset.Fields("RECID") = AdoREG.Recordset.RecordCount + 4
adoaxb.Recordset.Fields("ERROR") = "0"
A = Trim(txtced.Text)
b = Format(A, "000000000")
adoaxb.Recordset.Fields("ACCOUNTNUM") = Trim(CmbVE.Text) & b
adoaxb.Recordset.Fields("DIMENSION3_") = Trim(TxtCliente.Text)
' Axp_Cliente
adoaxb.Recordset.Fields("NAME") = Trim(txtnom1.Text) & " " & Trim(txtnom2.Text) & " " & Trim(txtape1.Text) & " " & Trim(txtape2.Text)
adoaxb.Recordset.Fields("ADDRESS") = Trim(txtdirhab.Text)
adoaxb.Recordset.Fields("PHONE") = Trim(Txttelhab.Text)
adoaxb.Recordset.Fields("TELEFAX") = Trim(txttelcel.Text)
adoaxb.Recordset.Fields("CUSTGROUP") = "C980"
adoaxb.Recordset.Fields("COUNTRY") = "VE"
Adodc1.Recordset.Fields("pac_V_E") = Trim(CmbVE.Text)
Adodc1.Recordset.Fields("Ced_pac") = Trim(txtced.Text)
Adodc1.Recordset.Fields("ACCOUNTNUM") = Trim(CmbVE.Text) & b
Adodc1.Recordset.Fields("pac_nom") = Trim(txtnom1.Text)
Adodc1.Recordset.Fields("pac_nom2") = Trim(txtnom2.Text)
Adodc1.Recordset.Fields("pac_apellido") = Trim(txtape1.Text)
Adodc1.Recordset.Fields("Pac_Observacion") = Trim(Txtobservaciones.Text)
Adodc1.Recordset.Fields("pac_apellido2") = Trim(txtape2.Text)
Adodc1.Recordset.Fields("pac_nacionalidad") = Trim(txtnac.Text)
Adodc1.Recordset.Fields("pac_sexo") = Trim(cmbsex.Text)
Adodc1.Recordset.Fields("pac_fech_nac") = Trim(txtfechnac.Text)
Adodc1.Recordset.Fields("pac_direc_1") = Trim(txtdirhab.Text)
Adodc1.Recordset.Fields("Pac_Direc_Puntref") = Trim(txtdiralt.Text)
Adodc1.Recordset.Fields("Pac_email") = Trim(txtemail.Text)
Adodc1.Recordset.Fields("Pac_Telf_hab") = Trim(Txttelhab.Text)
Adodc1.Recordset.Fields("Pac_Telf_cul") = Trim(txttelcel.Text)
Adodc1.Recordset.Fields("Pac_Telf_famil") = Trim(txttelfam.Text)
Adodc1.Recordset.Fields("Pac_Telf_Trab") = Trim(txttelotr.Text)
Adodc1.Recordset.Fields("pac_fecha_linea") = Trim(txtfechalinea.Text)
ges1 = cmbestado.Text
ges = "Est_Nombre='" & ges1 & "'"
Adoestado.Recordset.MoveFirst
Adoestado.Recordset.Find ges
If Adoestado.Recordset.EOF = False Then
Adodc1.Recordset.Fields("cod_estado") = Trim(Adoestado.Recordset.Fields("cod_estado"))
adoaxb.Recordset.Fields("State") = Format(Trim(Adoestado.Recordset.Fields("cod_estado")), "000")
EST1 = Trim(Adoestado.Recordset.Fields("cod_estado"))
Else
Adodc1.Recordset.Fields("cod_estado") = ""
End If
gciu1 = Trim(Txtempresa.Text)
gciu = "DATAAREAID='" & gciu1 & "'"
Adociudad.Recordset.Filter = gciu
Adociudad.Recordset.MoveFirst
While Not Adociudad.Recordset.EOF
If Trim(Adociudad.Recordset.Fields("STATEID")) = Format(EST1, "000") Then
If Trim(Adociudad.Recordset.Fields("NAME")) = Trim(cmbciudad.Text) Then
Adodc1.Recordset.Fields("cod_ciudad") = Trim(Adociudad.Recordset.Fields("RECID"))
adoaxb.Recordset.Fields("COUNTY") = Trim(Adociudad.Recordset.Fields("COUNTYID"))
End If
'Adodc1.Recordset.Fields("cod_ciudad") = ""
End If
Adociudad.Recordset.MoveNext
Wend
Adodc1.Recordset.Fields("cod_ruta") = Trim(cmbruta.Text)
adoaxb.Recordset.Fields("DESTINATIONCODEID") = Trim(cmbruta.Text)
Adodc1.Recordset.Fields("Pacd_Rec_Mate") = Trim(cmbrecep.Text)
Adodc1.Recordset.Fields("Pacd_direc2") = Trim(txtdirmat.Text)
Adodc1.Recordset.Fields("Pacd_Tipoviv") = Trim(cmbtvivi.Text)
Adodc1.Recordset.Fields("Pacd_NomVivi") = Trim(txtNoav.Text)
Adodc1.Recordset.Fields("Pacd_apto") = Trim(txtapt.Text)
Adodc1.Recordset.Fields("Pacd_Piso") = Trim(txtpiso.Text)
Adodc1.Recordset.Fields("Pacd_av") = Trim(txtav.Text)
Adodc1.Recordset.Fields("Pacd_barrio") = Trim(txtbarrio.Text)
Adodc1.Recordset.Fields("Pacd_ubr") = Trim(txtubr.Text)
Adodc1.Recordset.Fields("Pacd_Pueblo") = Trim(txtpueblo.Text)
Adodc1.Recordset.Fields("Pacd_Calleav") = Trim(Txtcalleav.Text)
Adodc1.Recordset.Fields("Pacd_Calle") = Trim(Txtcalle.Text)
genf1 = Trim(cmbenfbas.Text)
genf = "Enbs_Descrip='" & genf1 & "'"
Adoebase.Recordset.MoveFirst
Adoebase.Recordset.Find genf
If Adoebase.Recordset.EOF = False Then
Adodc1.Recordset.Fields("Cod_enfe_bas") = Trim(Adoebase.Recordset.Fields("Cod_enfe_bas"))
Else
Adodc1.Recordset.Fields("Cod_enfe_bas") = ""
End If
Adodc1.Recordset.Fields("Axp_Cliente") = Trim(TxtCliente.Text)
adoaxb.Recordset.Fields("INVOICEACCOUNT") = Trim(TxtCliente.Text)
gtip1 = Trim(cmbtipo.Text)
gtip = "TP_Descripcion='" & gtip1 & "'"
AdotipoP.Recordset.MoveFirst
AdotipoP.Recordset.Find gtip
If AdotipoP.Recordset.EOF = False Then
Adodc1.Recordset.Fields("IdTipaciente") = Trim(AdotipoP.Recordset.Fields("IdTipaciente"))
Else
Adodc1.Recordset.Fields("IdTipaciente") = ""
End If
gcor = Trim(CMBSTACOR.Text)
gcor1 = "Corte_Descrip='" & gcor & "'"
AdoSTACOR.Recordset.MoveFirst
AdoSTACOR.Recordset.Find gcor1
If AdoSTACOR.Recordset.EOF = False Then
Adodc1.Recordset.Fields("Idcorte") = Trim(AdoSTACOR.Recordset.Fields("Idcorte"))
Else
'Adodc1.Recordset.Fields("Idcorte") = ""
End If
Adodc1.Recordset.Fields("Pac_Ciclos") = Trim(Cmbciclos.Text)
If Len(Trim(txtfechemi.Text)) <> 0 Then Adodc1.Recordset.Fields("Pacs_fecha_emision") = Trim(txtfechemi.Text)
If Len(Trim(txtfechven.Text)) <> 0 Then Adodc1.Recordset.Fields("Pacs_fech_venc") = Trim(txtfechven.Text)
Adodc1.Recordset.Fields("Pacs_cort_obs") = Trim(Txtcorteobs.Text)
If Len(Trim(Txtivss.Text)) <> 0 Then Adodc1.Recordset.Fields("Pacs_cort_noivss") = Trim(Txtivss.Text)
gdia = Trim(cmbtrata.Text)
gdia1 = "DP_Descrip='" & gdia & "'"
Adodiaper.Recordset.MoveFirst
Adodiaper.Recordset.Find gdia1
If Adodiaper.Recordset.EOF = False Then
Adodc1.Recordset.Fields("Cod_Dia_Per") = Trim(Adodiaper.Recordset.Fields("Cod_Dia_Per"))
Adodc1.Recordset.Fields("PAcA_Status") = Trim(CmbStatusAPD.Text)
If Len(Trim(TxtFasignada.Text)) <> 0 Then Adodc1.Recordset.Fields("PacA_Fechaasig") = Trim(TxtFasignada.Text)
If Len(Trim(TxtFretiro.Text)) <> 0 Then Adodc1.Recordset.Fields("PacA_Fecharet") = Trim(TxtFretiro.Text)
Adodc1.Recordset.Fields("PacA_Serial") = Trim(TxtSerial.Text)
'adoaxb.Recordset.Fields("FMCDELIVERYTYPE") = Trim(Adodiaper.Recordset.Fields("DP_Axapta"))
Else
Adodc1.Recordset.Fields("Cod_Dia_Per") = ""
End If
ghos = Trim(cmbhosp.Text)
ghos1 = "Hosp_Nombre='" & ghos & "'"
Adohospital.Recordset.MoveFirst
Adohospital.Recordset.Find ghos1
If Adohospital.Recordset.EOF = False Then
Adodc1.Recordset.Fields("Cod_Hosp") = Trim(Adohospital.Recordset.Fields("Cod_Hosp"))
adoaxb.Recordset.Fields("DIMENSION") = Trim(Adohospital.Recordset.Fields("COD_AXP"))
Else
Adodc1.Recordset.Fields("Cod_Hosp") = ""
End If
Adopersohosp.Recordset.MoveFirst
Do Until Adopersohosp.Recordset.EOF
Text13.Text = Trim(Adopersohosp.Recordset("Perso_Apell")) & ", " & Trim(Adopersohosp.Recordset("Perso_Nomb"))
A = Trim(cmbespren1.Text)
If A = Trim(Text13.Text) Then
cod = Trim(Adopersohosp.Recordset.Fields("Perso_cod"))
Adodc1.Recordset.Fields("Cod_esp_ren") = cod
End If
Adopersohosp.Recordset.MoveNext
Loop
Adopersohosp.Recordset.MoveFirst
Do Until Adopersohosp.Recordset.EOF
Text13.Text = Trim(Adopersohosp.Recordset("Perso_Apell")) & ", " & Trim(Adopersohosp.Recordset("Perso_Nomb"))
b = Trim(cmbmedico1.Text)
If b = Text13.Text Then
medcod = Trim(Adopersohosp.Recordset.Fields("Perso_cod"))
Adodc1.Recordset.Fields("Cod_med_tra") = medcod
End If
Adopersohosp.Recordset.MoveNext
Loop
Adopersohosp.Recordset.MoveFirst
Do Until Adopersohosp.Recordset.EOF
Text13.Text = Trim(Adopersohosp.Recordset("Perso_Apell")) & ", " & Trim(Adopersohosp.Recordset("Perso_Nomb"))
b = Trim(cmbenfermera.Text)
If b = Text13.Text Then
medcod = Trim(Adopersohosp.Recordset.Fields("Perso_cod"))
Adodc1.Recordset.Fields("Cod_enfer_resp") = medcod
End If
Adopersohosp.Recordset.MoveNext
Loop
Adodc1.Recordset.Fields("Pac_fech_ing") = Trim(Txtfeching.Text)
Adodc1.Recordset.Fields("Pac_fech_cter") = Trim(TxtfechCateter.Text)
gsta = Cmbstatus.Text
gsta1 = "Status_Descrip='" & gsta & "'"
ADOSTATUS.Recordset.MoveFirst
ADOSTATUS.Recordset.Find gsta1
If ADOSTATUS.Recordset.EOF = False Then
Adodc1.Recordset.Fields("Cod_Status") = Trim(ADOSTATUS.Recordset.Fields("Cod_Status"))
adoaxb.Recordset.Fields("BLOCKED") = Trim(ADOSTATUS.Recordset.Fields("Status_BLOCKED"))
Else
Adodc1.Recordset.Fields("Cod_Status") = ""
End If
Adodc1.Recordset.Fields("Pacs_Preact") = Trim(CmbPreactivo.Text)
If Len(Trim(Txtfechegr.Text)) <> 0 Then Adodc1.Recordset.Fields("Pacs_fech_egre") = Trim(Txtfechegr.Text)
gegr = Trim(CMBCausaegr.Text)
gegr1 = "Ca_egr_Descrip='" & gegr & "'"
Adocausa.Recordset.MoveFirst
Adocausa.Recordset.Find gegr1
If Adocausa.Recordset.EOF = False Then
If Adodc1.Recordset.Fields("Ca_egr_Descrip") = Trim(CMBCausaegr.Text) Then
Adodc1.Recordset.Fields("Cod_ca_egr") = Trim(Adocausa.Recordset.Fields("Cod_ca_egr"))
End If
Else
'Adodc1.Recordset.Fields("Cod_ca_egr") = ""
End If
If Len(Trim(txtfechreing.Text)) <> 0 Then Adodc1.Recordset.Fields("pacs_fech_reing") = Trim(txtfechreing.Text)
If Len(Trim(txtfechIsus.Text)) <> 0 Then Adodc1.Recordset.Fields("Pacs_fech_d_susp") = Trim(txtfechIsus.Text)
If Len(Trim(txtfechFsus.Text)) <> 0 Then Adodc1.Recordset.Fields("Pacs_fech_h_susp") = Trim(txtfechFsus.Text)
gsusp = Trim(cmbcausasusp.Text)
gsusp1 = "Sup_Descrip='" & gsusp & "'"
Adocausup.Recordset.MoveFirst
Adocausup.Recordset.Find gsusp1
If Adocausup.Recordset.EOF = False Then
Adodc1.Recordset.Fields("Cod_Cau_Sus") = Trim(Adocausup.Recordset.Fields("Cod_Cau_Sus"))
Else
'Adodc1.Recordset.Fields("Cod_Cau_Sus") = ""
End If
If Len(Trim(txtfechreing.Text)) <> 0 Then Adodc1.Recordset.Fields("pacs_fech_reing") = Trim(txtfechreing.Text)
'Adodc1.Recordset.Fields("Pacs_obs_susp") = Trim(Txtobsusp.Text)
ghosusp = Trim(Cmbhospsus.Text)
ghosusp1 = "Hosp_Nombre='" & ghosusp & "'"
Adohospital.Recordset.MoveFirst
Adohospital.Recordset.Find ghosusp1
If Adohospital.Recordset.EOF = False Then
Adodc1.Recordset.Fields("Pacs_Cod_hospSusp") = Trim(Adohospital.Recordset.Fields("Cod_Hosp"))
Else
'Adodc1.Recordset.Fields("Cod_Hosp") = ""
End If
Adodc1.Recordset.Update
adoaxb.Recordset.Update
End If
Adoseguridad.Recordset.AddNew
Adoseguridad.Recordset.Fields("Seg_Usuario") = FrmMenu.TxtUsuario.Text
Adoseguridad.Recordset.Fields("Seg_fecha") = FrmMenu.Txtfecha.Text
Adoseguridad.Recordset.Fields("Seg_Transacion") = " Guardo Inclusion o Modificacion de Paciente"
Adoseguridad.Recordset.Fields("ced_Pac") = txtced.Text
Adoseguridad.Recordset.Update
Unload Me
Me.Show
End Sub

Son 2 tablas principales que conectan, uno de un programa externo,Axapta, y uno de la db propia del proyecto.

Me gustaria opiniones para mejorar el codigo, ya que el tiempo de ejecucion es muy lenta
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder