*--------------------------------------------------------------------------------------------------------------------------------------------------------
* (EN) AUTOGENERATED - ATTENTION!! - NOT INTENDED FOR EXECUTION!! USE ONLY FOR MERGING CHANGES AND STORING WITH SCM TOOLS!!
*--------------------------------------------------------------------------------------------------------------------------------------------------------
*< FOXBIN2PRG: Version="1.21" SourceFile="drept_grupuri.vcx" CPID="1252" /> (Solo para binarios VFP 9 / Only for VFP 9 binaries)
*
*
DEFINE CLASS cus_odata_grupuri AS _cusodatabase OF "_cus_odata_base.vcx"
*< CLASSDATA: Baseclass="custom" Timestamp="" Scale="Pixels" Uniqueid="" />
#INCLUDE "..\..\program files\microsoft visual foxpro 8\foxpro.h"
*
Name = "cus_odata_grupuri"
*
PROCEDURE make_sql
Lparameters toRec,tnId
lcActiune = Alltrim(This.cActiune)
If Inlist(lcActiune, "UPDATE",'INSERT') And Type('toRec') != "O"
Return .F.
Endif
If Inlist(lcActiune, "UPDATE",'DELETE') And Type('tnId') != "N"
Return .F.
Endif
If Inlist(lcActiune, "UPDATE",'DELETE')
lcId = Alltrim(Str(tnId))
Endif
If Inlist(lcActiune, "UPDATE",'INSERT')
lcAcces = Alltrim(toRec.Acces)
Endif
Do Case
Case lcActiune = "INSERT"
Case lcActiune = "UPDATE"
lcSql = [begin PACK_DREPTURI.grupdreptmodproc(] + Alltrim(Str(gnIdProgram))+ ;
[,] + lcId + [,']+ lcAcces +[',]+Alltrim(Str(gnIdUtil))+[); end;]
Case lcActiune = "DELETE"
Endcase
This.csql = lcSql
ENDPROC
ENDDEFINE
DEFINE CLASS frm_grupuri AS _frmbase OF "_frm_base.vcx"
*< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" />
*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
*< OBJECTDATA: ObjPath="But_sterge1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="_grid1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="_grid1.cUtil.Header1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="_grid1.cUtil.Text1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="But_nou1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="But_modifica1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="Cmd_cauta1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="Clb_grup" UniqueID="" Timestamp="" />
*
DoCreate = .T.
Height = 250
Name = "frm_grupuri"
Width = 450
_shape1.Name = "_shape1"
_shape1.Width = 450
_shape2.Height = 29
_shape2.Left = 349
_shape2.Name = "_shape2"
_shape2.Top = 0
_shape2.Width = 103
Lb_titlu_alb_b121.Caption = "Drepturi grupuri"
Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121"
BUT_TERMIN1.Left = 419
BUT_TERMIN1.Name = "BUT_TERMIN1"
BUT_TERMIN1.Top = 1
*
ADD OBJECT '_grid1' AS _grid WITH ;
ColumnCount = 1, ;
DeleteMark = .F., ;
Height = 166, ;
Left = 7, ;
Name = "_grid1", ;
Panel = 1, ;
RecordSource = "crsgrupuri", ;
TabIndex = 3, ;
Top = 74, ;
Width = 425, ;
ZOrderSet = 5, ;
Column1.ControlSource = "grup", ;
Column1.Name = "cUtil", ;
Column1.Width = 395
*< END OBJECT: ClassLib="_baza.vcx" BaseClass="grid" />
ADD OBJECT '_grid1.cUtil.Header1' AS header WITH ;
Alignment = 2, ;
Caption = "Grup", ;
Name = "Header1"
*< END OBJECT: BaseClass="header" />
ADD OBJECT '_grid1.cUtil.Text1' AS textbox WITH ;
BackColor = 255,255,255, ;
BorderStyle = 0, ;
ForeColor = 0,0,0, ;
Margin = 0, ;
Name = "Text1"
*< END OBJECT: BaseClass="textbox" />
ADD OBJECT 'But_modifica1' AS but_modifica WITH ;
Left = 356, ;
Name = "But_modifica1", ;
Top = 1
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
ADD OBJECT 'But_nou1' AS but_nou WITH ;
Left = 275, ;
Name = "But_nou1", ;
Top = 1, ;
Visible = .F.
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
ADD OBJECT 'But_sterge1' AS but_sterge WITH ;
Left = 388, ;
Name = "But_sterge1", ;
Top = 1
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
ADD OBJECT 'Clb_grup' AS clb_tx_simplu WITH ;
Left = 26, ;
Name = "Clb_grup", ;
TabIndex = 1, ;
Top = 36, ;
ZOrderSet = 9, ;
Text_simplu1.Format = "!K", ;
Text_simplu1.Name = "Text_simplu1", ;
Lb_simplu1.Caption = "Grup", ;
Lb_simplu1.Name = "Lb_simplu1"
*< END OBJECT: ClassLib="lb_tx.vcx" BaseClass="container" />
ADD OBJECT 'Cmd_cauta1' AS cmd_cauta WITH ;
Left = 334, ;
Name = "Cmd_cauta1", ;
TabIndex = 2, ;
Top = 36, ;
ZOrderSet = 10
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
PROCEDURE actualizeaza_grid1
Lparameters pcFiltru
Local lcFiltru
lcFiltru=pcFiltru
If Empty(lcFiltru)
lcFiltru=pogrupuri.ca_baza1.cfiltru
Endif
save_grid_tag(Thisform._grid1)
pogrupuri.ca_baza1.cfiltru=lcFiltru
pogrupuri.ca_baza1.afisare()
restore_grid_tag(Thisform._grid1)
If Reccount('crsgrupuri')>0
Thisform._grid1.SetFocus()
Else
Thisform.clb_grup.SetFocus()
Endif
ENDPROC
PROCEDURE do_adauga
*!* Private pniesire
*!* pniesire=0
*!* Select crsutilizatori
*!* Scatter Name loRec Blank
*!* AddProperty(loRec,"parola","")
*!* Do Adauga_Modifica_Inregistrare With "utilizatori",loRec,,"INSERT"
*!* If pniesire=1
*!* Thisform.actualizeaza_grid1()
*!* Endif
ENDPROC
PROCEDURE do_cauta
Local lcFiltru
*!* lcFiltru=[id_firma=?gnIdFirma and id_prog=?gnIdProgram]
lcFiltru=[2=2]
lcNume=Thisform.clb_grup.text_simplu1.Value
If !Empty(lcNume)
lcFiltru=lcFiltru + [ and grup like '] + Alltrim(lcNume) + [%']
Endif
Thisform.MousePointer= 11
Thisform.LockScreen=.T.
Thisform.actualizeaza_grid1(lcFiltru)
If Reccount('crsgrupuri')=0
Messagebox("Cautarea nu a intors rezultate!",0+64,"Info cautare")
Endif
Thisform.LockScreen=.F.
Thisform.MousePointer=0
ENDPROC
PROCEDURE do_modifica
If Reccount('crsgrupuri')>0
Private pniesire
pniesire=0
Select crsgrupuri
Scatter Name loRec
AddProperty(loRec,[acces],[])
citeste_drepturi(loRec.id_grup)
Do Adauga_Modifica_Inregistrare With "grupuri",loRec,loRec.id_grup,"UPDATE"
If pniesire=1
Thisform.actualizeaza_grid1()
Endif
Endif
ENDPROC
ENDDEFINE
DEFINE CLASS frm_grupuri_nou AS _frmbase OF "_frm_base.vcx"
*< CLASSDATA: Baseclass="form" Timestamp="" Scale="Pixels" Uniqueid="" />
*-- OBJECTDATA items order determines ZOrder / El orden de los items OBJECTDATA determina el ZOrder
*< OBJECTDATA: ObjPath="But_renunt1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="Clb_grup" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="Oleacces1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="LB_SIMPLU1" UniqueID="" Timestamp="" />
*< OBJECTDATA: ObjPath="Cus_odata_grupuri1" UniqueID="" Timestamp="" />
*
*m: actualizeaza_acces
*m: citeste_noduri
*p: nid
*p: orec
*
*
DoCreate = .T.
Height = 563
Name = "frm_grupuri_nou"
nid = 0
orec =
Width = 554
_shape1.Height = 29
_shape1.Left = 0
_shape1.Name = "_shape1"
_shape1.Top = 0
_shape1.Width = 552
_shape2.Height = 29
_shape2.Left = 482
_shape2.Name = "_shape2"
_shape2.Top = 0
_shape2.Width = 70
Lb_titlu_alb_b121.Caption = "Operator"
Lb_titlu_alb_b121.Name = "Lb_titlu_alb_b121"
Lb_titlu_alb_b121.TabIndex = 7
BUT_TERMIN1.Left = 518
BUT_TERMIN1.Name = "BUT_TERMIN1"
BUT_TERMIN1.TabIndex = 7
BUT_TERMIN1.Top = 1
*
ADD OBJECT 'But_renunt1' AS but_renunt WITH ;
Left = 487, ;
Name = "But_renunt1", ;
TabIndex = 8, ;
Top = 1
*< END OBJECT: ClassLib="cmd_butoane.vcx" BaseClass="commandbutton" />
ADD OBJECT 'Clb_grup' AS clb_tx_simplu WITH ;
Height = 29, ;
Left = 114, ;
Name = "Clb_grup", ;
TabIndex = 1, ;
Top = 48, ;
Width = 326, ;
Text_simplu1.ControlSource = "porec.grup", ;
Text_simplu1.Format = "!K", ;
Text_simplu1.Left = 138, ;
Text_simplu1.Name = "Text_simplu1", ;
Lb_simplu1.Caption = "Operator", ;
Lb_simplu1.Name = "Lb_simplu1"
*< END OBJECT: ClassLib="lb_tx.vcx" BaseClass="container" />
ADD OBJECT 'Cus_odata_grupuri1' AS cus_odata_grupuri WITH ;
Left = 36, ;
Name = "Cus_odata_grupuri1", ;
Top = 36
*< END OBJECT: ClassLib="drept_grupuri.vcx" BaseClass="custom" />
ADD OBJECT 'LB_SIMPLU1' AS lb_simplu WITH ;
Caption = "Optiuni accesibile", ;
Left = 13, ;
Name = "LB_SIMPLU1", ;
TabIndex = 10, ;
Top = 86
*< END OBJECT: ClassLib="lb.vcx" BaseClass="label" />
ADD OBJECT 'Oleacces1' AS oleacces WITH ;
Height = 434, ;
Left = 22, ;
Name = "Oleacces1", ;
TabIndex = 6, ;
Top = 108, ;
Width = 516
*< END OBJECT: ClassLib="drept_grupuri.vcx" BaseClass="olecontrol" OLEObject="c:\windows\system32\mscomctl.ocx" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJB8A9NKzsUBAwAAAMACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAKIBAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAAJAAAACgAAAP7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAABVNQAA2ywAALE8wWoBAAYAIgAAADkAAADtAwAACQAAAKEKGwAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTFmAHQAIABXAGkAbgBkAG8AdwBzACAAUgBlAHAAbwByAHQAIAABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFAHAMGwAHAAAAAAAAAAUAAICI3xIAAQAAAFwAH97svQEABQDM3xIATgBUAFwAUwB5AHMAdABlAG0AMwAyAAAAQ0AKAAAATGFiZWxFZGl0AAkAAABJCgAAAAEAAAAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAcAAABTb3J0ZWQABQAAAEwAAAAABgAAAFN0eWxlAAkAAABJCgAAAAYAAAAMAAAAT0xFRHJhZ01vZGUACQAAAEkKAAAAAAAAAAwAAABPTEVEcm9wTW9kZQAJAAAASQoAAAAAAAAACwAAAEFwcGVhcmFuY2UACQAAAEkKAAAAAQAAAAwAAABCb3JkZXJTdHlsZQAJAAAASQoAAAABAAAACwAAAENoZWNrYm94ZXMABQAAAEwBAAAADgAAAEZ1bGxSb3dTZWxlY3QABQAAAEwAAAAADAAAAEhvdFRyYWNraW5nAAUAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" />
PROCEDURE actualizeaza_acces
ENDPROC
PROCEDURE citeste_noduri
Local lcAcces
lcAcces=[]
For i=1 To Thisform.oleacces1.Nodes.Count()
If Thisform.oleacces1.Nodes.Item(i).Children=0 And Thisform.oleacces1.Nodes.Item(i).Checked
lcAcces=lcAcces+Thisform.oleacces1.Nodes.Item(i).Key
Endif
Endfor
porec.acces=lcAcces
ENDPROC
PROCEDURE inainte_de_do_termin
Private PLRETURN
Set Exact On
If Upper(Alltrim(Thisform.ActiveControl.Name))='TEXT_SIMPLU1'
lcval=This.ActiveControl.ControlSource
&lcval=Thisform.ActiveControl.Value
Endif
lcgrup=Alltrim(porec.grup)
Thisform.citeste_noduri()
lcActiune=Upper(Alltrim(Thisform.cus_odata_grupuri1.cactiune))
PLRETURN=This.cus_odata_grupuri1.salvare(This.orec,This.nid)
pniesire=1
Return PLRETURN
ENDPROC
PROCEDURE Init
Lparameters toRec, tnId, tcActiune
This.orec= toRec
This.nid = tnId
This.cus_odata_grupuri1.cactiune = tcActiune
If tcActiune='UPDATE'
Thisform.clb_grup.texT_SIMPLU1.ReadOnly=.T.
Select crsdrepturi
Scan
lcCheie=Alltrim(cheie)
loNode=Thisform.oleacces1.Object.nodes.Item(lcCheie)
loNode.Checked= .T.
Thisform.oleacces1.nodeCheck(loNode)
Endscan
Endif
ENDPROC
PROCEDURE Oleacces1.KeyPress
*** ActiveX Control Event ***
Lparameters keyascii
Do Case
Case keyascii=6
Thisform.KeyPress(6,2)
Case keyascii=27
Thisform.KeyPress(27,0)
Otherwise
DoDefault()
Endcase
ENDPROC
ENDDEFINE
DEFINE CLASS oleacces AS _olecontrol OF "_baza.vcx"
*< CLASSDATA: Baseclass="olecontrol" Timestamp="" Scale="Pixels" Uniqueid="" Nombre="oleacces" Parent="" ObjName="oleacces" OLEObject="C:\WINDOWS\system32\MSCOMCTL.OCX" Value="0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAAEAAAAgAAAAEAAAD+////AAAAAAAAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9/////v////7///8EAAAA/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////1IAbwBvAHQAIABFAG4AdAByAHkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAWAAUA//////////8BAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADCCV/eMzcUBAwAAAMACAAAAAAAAAwBPAGwAZQBPAGIAagBlAGMAdABEAGEAdABhAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB4AAgEDAAAAAgAAAP////8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAagAAAAAAAAADAEEAYwBjAGUAcwBzAE8AYgBqAFMAaQB0AGUARABhAHQAYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJgACAP///////////////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAABcAAAAAAAAAAMAQwBoAGEAbgBnAGUAZABQAHIAbwBwAHMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcAAIA////////////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAKIBAAAAAAAABAAAAAIAAAD+////BQAAAP7///8GAAAABwAAAAgAAAAJAAAACgAAAP7///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+2kEHHiYXREbFqAMDwKDYoIUM0EggAAABIIQAAZhIAALE8wWoBAAYAIgAAABkAAADtAwAACQAAANnTGQAB782rXAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAACQAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA5MzY4MjY1RS04NUZFLTExZDEtOEJFMy0wMDAwRjg3NTREQTFmAHQAIABXAGkAbgBkAG8AdwBzACAAUgBlAHAAbwByAHQAIAABAACADgAAAEhpZGVTZWxlY3Rpb24ABQAAAEwAAAAADAAAAEluZGVudGF0aW9uABEAAABODQAAAAcAAAAAAAAAAAAFAKjVGQAHAAAAAAAAAAUAAIDA6xIAAQAAAFwAH97svQEABQAE7BIATgBUAFwAUwB5AHMAdABlAG0AMwAyAAAAQ0AKAAAATGFiZWxFZGl0AAkAAABJCgAAAAAAAAAKAAAATGluZVN0eWxlAAkAAABJCgAAAAEAAAANAAAATW91c2VQb2ludGVyAAkAAABJCgAAAAAAAAAOAAAAUGF0aFNlcGFyYXRvcgAKAAAASAAAAAABAAAAXAcAAABTb3J0ZWQABQAAAEwAAAAABgAAAFN0eWxlAAkAAABJCgAAAAYAAAAMAAAAT0xFRHJhZ01vZGUACQAAAEkKAAAAAAAAAAwAAABPTEVEcm9wTW9kZQAJAAAASQoAAAAAAAAACwAAAEFwcGVhcmFuY2UACQAAAEkKAAAAAQAAAAwAAABCb3JkZXJTdHlsZQAJAAAASQoAAAABAAAACwAAAENoZWNrYm94ZXMABQAAAEwBAAAADgAAAEZ1bGxSb3dTZWxlY3QABQAAAEwAAAAADAAAAEhvdFRyYWNraW5nAAUAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" />
*
*m: adauga_frunze
*m: bifeaza_nod
*m: citeste_meniu
*m: citeste_pageframe
*p: cmeniu && Numele meniului
*p: cpageframe
*
*
cmeniu =
cpageframe =
Height = 178
Name = "oleacces"
Width = 322
*
PROCEDURE adauga_frunze
Lparameters lnTip,lcKey
Do Case
Case lnTip=0 && introducere
Case lnTip=1 && raport
lcProp="cnt"+lcKey
This.AddProperty(lcProp,0)
This.Nodes.Add(lcKey,4,lcKey+"1","Export")
This.Nodes.Add(lcKey,4,lcKey+"2","Listare")
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"1",4,"Export",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"2",4,"Listare",lcKey)
Endif
Case lnTip=2 && registru
lcProp="cnt"+lcKey
This.AddProperty(lcProp,0)
This.Nodes.Add(lcKey,4,lcKey+"1","Export")
This.Nodes.Add(lcKey,4,lcKey+"2","Listare")
This.Nodes.Add(lcKey,4,lcKey+"3","Modificare")
This.Nodes.Add(lcKey,4,lcKey+"4","Refacere")
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"1",4,"Export",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"2",4,"Listare",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"3",4,"Modificare",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"4",4,"Refacere",lcKey)
Endif
Case lnTip=3 && balanta\inreg.
lcProp="cnt"+lcKey
This.AddProperty(lcProp,0)
This.Nodes.Add(lcKey,4,lcKey+"1","Export")
This.Nodes.Add(lcKey,4,lcKey+"2","Listare")
This.Nodes.Add(lcKey,4,lcKey+"3","Modificare")
This.Nodes.Add(lcKey,4,lcKey+"4","Refacere")
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"1",4,"Export",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"2",4,"Listare",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"3",4,"Modificare",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"4",4,"Refacere",lcKey)
Endif
Case lnTip=4 && vizualizare
lcProp="cnt"+lcKey
This.AddProperty(lcProp,0)
This.Nodes.Add(lcKey,4,lcKey+"1","Export")
This.Nodes.Add(lcKey,4,lcKey+"2","Listare")
This.Nodes.Add(lcKey,4,lcKey+"3","Modificare")
This.Nodes.Add(lcKey,4,lcKey+"4","Stergere")
This.Nodes.Add(lcKey,4,lcKey+"5","Vizualizare inreg. proprii")
This.Nodes.Add(lcKey,4,lcKey+"6","Vizualizare toate inreg.")
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"1",4,"Export",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"2",4,"Listare",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"3",4,"Modificare",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"4",4,"Stergere",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"5",4,"Vizualizare inreg.proprii",lcKey)
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+"6",4,"Vizualizare tot",lcKey)
Endif
Endcase
ENDPROC
PROCEDURE bifeaza_nod
Lparameters Node,llChecked
Local loChild,i
*!* If Isnull(Node.Parent)
*!* loProp='this.cnt'+Node.Key
*!* If Node.checked
*!* &loProp=Node.children
*!* Else
*!* &loProp=0
*!* Endif
*!* Node.bold=Node.checked
*!* loChild=Node.Child.FirstSibling
*!* For i=1 To Node.children
*!* loChild.checked=Node.checked
*!* loChild=loChild.Next
*!* Endfor
*!* Else
*!* loProp='this.cnt'+Node.Parent.Key
*!* If Node.checked
*!* &loProp=&loProp+1
*!* Node.Parent.bold=Node.checked
*!* If &loProp=Node.Parent.children
*!* Node.Parent.checked=.T.
*!* Endif
*!* Else
*!* &loProp=&loProp-1
*!* If Node.Parent.checked
*!* Node.Parent.checked=.F.
*!* Endif
*!* If &loProp=0
*!* Node.Parent.bold=.F.
*!* Endif
*!* Endif
*!* Endif
loChild=Node.Child.FirstSibling
For i=1 To Node.children
If loChild.children>0
This.bifeaza_nod(loChild,llChecked)
loChild.bold=llChecked
Endif
loChild.checked=llChecked
loChild=loChild.Next
Endfor
ENDPROC
PROCEDURE citeste_meniu
Lparameters lnKey,lcNumeMeniu,lcOptiune
lcKey=Chr(lnKey)
This.Nodes.Add(,1,lcKey,lcOptiune)
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey,1,lcOptiune,[ ])
Endif
lnKey2=65
k=0
Try
lcKey2=lcKey+Chr(lnKey2)
lnKey2=lnKey2+1
This.Nodes.Add(lcKey,4,lcKey2,'Utile')
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey2,4,[Utile],lcKey)
Endif
For i=1 To Cntbar('utile')
lcOptiune=Prmbar('utile',i)
If !Empty(lcOptiune)
k=k+1
This.Nodes.Add(lcKey2,4,lcKey2+Padl(Alltrim(Str(k)),2,[0]),lcOptiune)
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey2+Padl(Alltrim(Str(k)),2,[0]),4,lcOptiune,lcKey2)
Endif
Endif
Endfor
Catch
Endtry
k=0
Try
lcKey2=lcKey+Chr(lnKey2)
lnKey2=lnKey2+1
This.Nodes.Add(lcKey,4,lcKey2,'Initializare')
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey2,4,[Initializare],lcKey)
Endif
For i=1 To Cntbar('initializa')
lcOptiune=Prmbar('initializa',i)
If !Empty(lcOptiune)
k=k+1
This.Nodes.Add(lcKey2,4,lcKey2+Padl(Alltrim(Str(k)),2,[0]),lcOptiune)
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey2+Padl(Alltrim(Str(k)),2,[0]),4,lcOptiune,lcKey2)
Endif
Endif
Endfor
Catch
Endtry
k=0
Try
lcKey2=lcKey+Chr(lnKey2)
This.Nodes.Add(lcKey,4,lcKey2,'Actualizari')
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey2,4,[Actualizari],lcKey)
Endif
For i=1 To Cntbar('_1bs12qror')
lcOptiune=Prmbar('_1bs12qror',i)
If !Empty(lcOptiune)
k=k+1
This.Nodes.Add(lcKey2,4,lcKey2+Padl(Alltrim(Str(k)),2,[0]),lcOptiune)
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey2+Padl(Alltrim(Str(k)),2,[0]),4,lcOptiune,lcKey2)
Endif
Endif
Endfor
Catch
Endtry
ENDPROC
PROCEDURE citeste_pageframe
Lparameters lnKey,lcPageFrame,lcTata
Local lcKey,lcProp,lcOptiune,lnNivel,lnPozitie,i,j,k,l
Store [] To lcKey,lcProp,lcOptiune
Store 0 To lnNivel,lnPozitie,i,j,k,l
If Empty(lcTata)
lcTata=Null
lnNivel=1
Else
lnNivel=4
Endif
Set Exact On
With &lcPageFrame
For i=1 To .PageCount
For j=1 To .PageCount
If .Pages(j).PageOrder=i
Exit
Endif
Endfor
With .Pages(j)
lcKey=Nvl(lcTata,[])+Chr(lnKey)
This.Nodes.Add(lcTata,lnNivel,lcKey,.Caption)
lcProp="cnt"+lcKey
This.AddProperty(lcProp,0)
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey,lnNivel,.Caption,Nvl(lcTata,[ ]))
Endif
lcProp="cnt"+lcKey
This.AddProperty(lcProp,0)
Dimension copii(128,3)
k=1
For l=1 To .ControlCount
Do Case
Case Alltrim(Upper(.Objects(l).Class))='PAGEFRAME'
lcNume=lcPageFrame+'.'+Alltrim(.Name)+'.'+Alltrim(Upper(.Objects(l).Name))
This.citeste_pageframe(65,lcNume,lcKey)
Case Alltrim(Upper(.Objects(l).Class))='CW' And .Objects(l).nid_cw>0
lcOptiune=.Objects(l).label_item1.Caption
lnPozitie=.Objects(l).nid_cw
copii(lnPozitie,1)=lcOptiune
copii(lnPozitie,2)=.Objects(l).ntip
copii(lnPozitie,3)=.Objects(l).cmeniu
k=k+1
Endcase
Endfor
For l=1 To k-1
This.Nodes.Add(lcKey,4,lcKey+Padl(Alltrim(Str(l)),2,[0]),copii(l,1))
If plCursor
Insert Into CRSOBIECTE (CHEIE,NIVEL,EXPLICATIE,TATA) Values(lcKey+Padl(Alltrim(Str(l)),2,[0]),4,copii(l,1),lcKey)
Endif
*!* If !Empty(copii(l,3))
*!* This.adauga_meniuri(copii(l,3),copii(l,2),lcKey+Padl(Alltrim(Str(l)),2,[0]))
*!* Else
This.adauga_frunze(copii(l,2),lcKey+Padl(Alltrim(Str(l)),2,[0]))
*!* Endif
Endfor
Endwith
lnKey=lnKey+1
Endfor
Endwith
Set Exact Off
ENDPROC
PROCEDURE Init
Private plCursor
Store .F. To plCursor
Local lnKey,lcOptiune
This.cmeniu=[cont2000]
This.cpageframe=[oprinc.pagefr1]
*!* Create Cursor CRSOBIECTE(ID_PROG N(1),CHEIE C(20),NIVEL N(2),EXPLICATIE C(100),TATA C(20),COD C(2),ID_OBIECT N(10),ID_TATA N(10))
*!* plCursor=.T.
This.citeste_meniu(90,This.cmeniu,"Meniu")
This.citeste_pageframe(65,This.cpageframe)
*!* Select * From CRSOBIECTE Into Table C:\OBIECTE.Dbf
*!* USE IN crsobiecte
*!* USE IN obiecte
ENDPROC
PROCEDURE NodeCheck
*** ActiveX Control Event ***
Lparameters Node
Local loNode
*!* If Messagebox("Doriti sa suspendati?",4,"")==6
*!* Debug
*!* Suspend
*!* Endif
llChecked=Node.checked
If Node.children<>0
Node.bold=llChecked
Endif
If Isnull(Node.Parent)
If Node.children<>0
This.bifeaza_nod(Node,llChecked)
Endif
Else
If Node.children<>0
This.bifeaza_nod(Node,llChecked)
Endif
loNode=Node
Do While !Isnull(loNode.Parent)
loNode=loNode.Parent
If loNode.bold!=llChecked
loNode.bold=llChecked
Endif
Enddo
Endif
ENDPROC
ENDDEFINE