' Desasocia un MU de la clase ' Pablo Sans Sub Main Stop If Not ValidarUsuario Then Exit Sub x = "" x = inputbox("Nombre de la clase a la cual se quiere borrar el método de usuario") If IsEmpty(x) Then Exit Sub Else If x = "" Then Exit Sub x = UCase(x) While Not ok Set xView = NewCompoundView(self,"BOMETHOD", self.Workspace, nil, True) Set xColumnum = xView.ColumnFromPath( "XNAME" ) Set xColumCID = xView.ColumnFromPath( "QUALIFIERID" ) Set xColumtt = xView.ColumnFromPath( "QUALIFIERDESC" ) Set xFilter = NewFilterSpec(xColumtt," = ", x) xView.addfilter( xFilter ) Set xFilter = NewFilterSpec(xColumCID," <> ", "") xView.addfilter( xFilter ) Set xVisualVar = VisualVarEditor( "XNAME" ) Call AddVarView ( xVisualVar, "XNAME", "XNAME","XNAME" , xView, "XNAME") xAcept = ShowVisualVar( xVisualVar ) If xAcept Then muID = GetValueVisualVar( xVisualVar, "XNAME", "XNAME" ) If Not muID = empty Then ok = True Set xMU = ExisteBO( self, "BOMETHOD", "ID", muID, NIL, true, false, "=" ) If Not xMu Is Nothing Then If msgbox ("Realmente desea borrar: "& xMu.xname &".",36,"Atención") = 6 Then xMU.boclassid = "" xMu.qualifierid = "" Call workspacecheck(self.workspace) Call msgbox ("El método no pertenece mas a la clase indicada.",64,"Información") End If Else Call msgbox ("Metodo no encontrado.",64,"Información") End If Else ok = False End If Else Exit Sub End If Wend End If End Sub '**********************************************' ' Crea un metodo de usuario en la clase seleccionada ' Pablo Sans Sub Main Stop If Not ValidarUsuario Then Exit Sub x = "" x = inputbox("Nombre de la clase a la cual se quiere agregar el método de usuario") If IsEmpty(x) Then Exit Sub Else If x = "" Then Exit Sub x = UCase(x) xClaseID = getClassID(self,x) If xClaseID = "" Then Call Msgbox("Error en encontrar la clase indicada",64,"Información") Exit Sub End If Set xMetodo = CrearBO( "BOMETHOD", Self ) showbo xMetodo call workspacecheck(self.workspace) Set xVector = NewVector() set xBucket = NewBucket() xBucket.Value = "UPDATE BOMETHOD " &_ "SET QUALIFIERDESC = '"& x &"', " &_ "QUALIFIERID = '"& xClaseID &"', " &_ "BO_PLACE_ID = 'FAFB0A55-CD34-4D82-B14E-4ACE3455A23D', " &_ "BOCLASSID = '"& xClaseID &"' " &_ "WHERE ID = '"& xMetodo.id &"'" xVector.Add(xBucket) ExecutarSQL xVector, "DistrObj", "", self.WorkSpace, -1 call workspacecheck(self.workspace) End If End Sub Private Function getClassID(self,x) getClassID = "" xString2 = StringConexion("ADO" , self.WorkSpace ) Set xCone2 = CreateObject("ADODB.CONNECTION") xCone2.connectionString = xString2 xCone2.connectiontimeOut = 150 Set xRst = RecordSet(xCone2, "SELECT TOP 1* FROM PRODUCTO") xRst.close xRst.activeconnection.commandtimeout = 0 q = "SELECT CLASSID FROM CLASSNAME WHERE CLASSNAME = '"& x &"'" xRst.source = q xRst.open Do While Not xRst.EOF If xRst.BOF = False Or xRst.EOF = False Then getClassID = CStr(xRst("CLASSID").VALUE) Exit Do End If Loop xRst.close End Function '**********************************************' ' Modifica un MU Seleccionado ' Pablo Sans Sub Main Stop If Not ValidarUsuario Then Exit Sub x = "" x = inputbox("Nombre de la clase a la cual se quiere modificar sus métodos de usuario") If IsEmpty(x) Then Exit Sub Else If x = "" Then Exit Sub x = UCase(x) While Not ok Set xView = NewCompoundView(self,"BOMETHOD", self.Workspace, nil, True) Set xColumnum = xView.ColumnFromPath( "XNAME" ) Set xColumCID = xView.ColumnFromPath( "QUALIFIERID" ) Set xColumtt = xView.ColumnFromPath( "QUALIFIERDESC" ) Set xFilter = NewFilterSpec(xColumtt," = ", x) xView.addfilter( xFilter ) Set xFilter = NewFilterSpec(xColumCID," <> ", "") xView.addfilter( xFilter ) Set xVisualVar = VisualVarEditor( "XNAME" ) Call AddVarView ( xVisualVar, "XNAME", "XNAME","XNAME" , xView, "XNAME") xAcept = ShowVisualVar( xVisualVar ) If xAcept Then muID = GetValueVisualVar( xVisualVar, "XNAME", "XNAME" ) If Not muID = empty Then ok = True Set xMU = ExisteBO( self, "BOMETHOD", "ID", muID, NIL, true, false, "=" ) If Not xMu Is Nothing Then showbo xMU Else Call msgbox ("Metodo no encontrado.",64,"Información") End If Else ok = False End If Else Exit Sub End If Wend End If End Sub