www.pudn.com > del6235577244.rar > main_un.pas


unit main_un; 
 
interface 
 
uses 
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
  Dialogs, Menus, BusinessSkinForm, bsSkinData, bsSkinCtrls, bsDialogs, 
  bsSkinShellCtrls,IniFiles,ComCtrls, bsSkinGrids, bsDBGrids, registry,ExtCtrls, 
  StdCtrls; 
 
type 
  TForm1 = class(TForm) 
    bsBusinessSkinForm1: TbsBusinessSkinForm; 
    bsCompressedStoredSkin1: TbsCompressedStoredSkin; 
    bsSkinData1: TbsSkinData; 
    bsSkinMainMenu1: TbsSkinMainMenu; 
    N1: TMenuItem; 
    bsSkinMainMenuBar1: TbsSkinMainMenuBar; 
    N6: TMenuItem; 
    N7: TMenuItem; 
    bsOpenSkinDialog1: TbsOpenSkinDialog; 
    N8: TMenuItem; 
    N12: TMenuItem; 
    N2: TMenuItem; 
    bsSkinScrollBar4: TbsSkinScrollBar; 
    bsSkinGroupBox1: TbsSkinGroupBox; 
    bsSkinDBGrid1: TbsSkinDBGrid; 
    bsSkinGroupBox2: TbsSkinGroupBox; 
    bsSkinTreeView1: TbsSkinTreeView; 
    bsSkinScrollBar5: TbsSkinScrollBar; 
    bsSkinScrollBar6: TbsSkinScrollBar; 
    bsSkinScrollBar8: TbsSkinScrollBar; 
    bsSkinScrollBar1: TbsSkinScrollBar; 
    bsSkinSplitter1: TbsSkinSplitter; 
    bsSkinScrollPanel1: TbsSkinScrollPanel; 
    bsSkinSpeedButton2: TbsSkinSpeedButton; 
    bsSkinSpeedButton1: TbsSkinSpeedButton; 
    bsSkinSpeedButton3: TbsSkinSpeedButton; 
    bsSkinSpeedButton4: TbsSkinSpeedButton; 
    bsSkinSpeedButton5: TbsSkinSpeedButton; 
    bsSkinSpeedButton6: TbsSkinSpeedButton; 
    bsSkinStdLabel1: TbsSkinStdLabel; 
    bsSkinStdLabel2: TbsSkinStdLabel; 
    bsSkinStatusBar1: TbsSkinStatusBar; 
    bsSkinStatusPanel1: TbsSkinStatusPanel; 
    bsSkinStatusPanel2: TbsSkinStatusPanel; 
    bsSkinStatusPanel3: TbsSkinStatusPanel; 
    procedure N6Click(Sender: TObject); 
    procedure N7Click(Sender: TObject); 
    procedure FormShow(Sender: TObject); 
    procedure N12Click(Sender: TObject); 
    procedure N8Click(Sender: TObject); 
    procedure N1Click(Sender: TObject); 
    procedure N2Click(Sender: TObject); 
    procedure bsSkinTreeView1MouseUp(Sender: TObject; Button: TMouseButton; 
      Shift: TShiftState; X, Y: Integer); 
    procedure FormCreate(Sender: TObject); 
    procedure bsSkinDBGrid1MouseUp(Sender: TObject; Button: TMouseButton; 
      Shift: TShiftState; X, Y: Integer); 
  private 
  f1,f2,f21,f11,f22,f12:TTreeNode; 
  pa_cl,jy_jy:Integer; //pa_cl记录选定专业根结点的班级ID 
 //jy_jy记录选定就业单位根结点的就业单位ID 
  procedure treeshow; 
    { Private declarations } 
  public 
    { Public declarations } 
  end; 
 
var 
  Form1: TForm1; 
 
implementation 
     uses set_un, stu,ser4,start,da_un,skin_un,info; 
{$R *.dfm} 
 
 
procedure tform1.treeshow; 
var s:string; 
 
begin 
f1:=bsSkinTreeView1.Items.Add(nil,'专业') ; 
f2:=bsSkinTreeView1.Items.Add(nil,'就业单位') ; 
//以专业开头的节点 
da.main_pa_q.Open; 
da.main_pa_q.First; 
while not da.main_pa_q.Eof do     //得到头节点下面的专业名称 
begin 
 f11:=bsSkinTreeView1.Items.AddChild(f1,da.main_pa_q.FieldValues['na']); 
 da.main_cl_q.Close; 
 da.main_cl_q.Parameters.ParamValues['pid']:=da.main_pa_q.FieldValues['id']; 
 da.main_cl_q.Open; 
 while not da.main_cl_q.Eof do //得到专业名称下面的班级节点名称 
 begin 
 f12:=bsSkinTreeView1.Items.AddChild(f11,da.main_cl_q.FieldValues['na']); 
 
 
 //得到班级下面各就业单位的学生名单 
 da.main_jy_q.Close; 
 da.main_jy_q.Open; 
 while not da.main_jy_q.Eof do 
 begin 
 bsSkinTreeView1.Items.AddChild(f12,da.main_jy_q.FieldValues['na']); 
 da.main_jy_q.Next; 
 end; 
 da.main_cl_q.Next; 
 end; 
 da.main_pa_q.next; 
end; 
 
//以就业单位的节点 
da.main_jy_q.Close; 
da.main_jy_q.Open; 
da.main_jy_q.First; 
while not da.main_jy_q.Eof do       //得到头节点下面的所有就业单位 
begin 
f21:=bsSkinTreeView1.Items.AddChild(f2,da.main_jy_q.FieldValues['na']) ; 
da.main_pa_q.Close; 
da.main_pa_q.Open; 
da.main_pa_q.First; 
   while not da.main_pa_q.Eof do    //得到就业单位节点下面的所有专业名称 
    begin 
     f22:=bsSkinTreeView1.Items.AddChild(f21,da.main_pa_q.FieldValues['na']); 
        da.main_cl_q.Close; 
        da.main_cl_q.Parameters.ParamValues['pid']:=da.main_pa_q.FieldValues['id']; 
        da.main_cl_q.Open; 
       while not da.main_cl_q.Eof do //得到专业名称下面的班级节点名称 
          begin 
            bsSkinTreeView1.Items.AddChild(f22,da.main_cl_q.FieldValues['na']); 
            da.main_cl_q.Next; 
         end; 
    da.main_pa_q.Next; 
   end; 
da.main_jy_q.Next; 
end; 
end; 
 
 
 
procedure TForm1.N6Click(Sender: TObject); 
var stu:TForm3; 
begin 
stu:=TForm3.Create(owner); 
stu.ShowModal; 
stu.Free; 
//Form3.Show; 
end; 
 
procedure TForm1.N7Click(Sender: TObject); 
var inifile1:TIniFile; 
skin:Tskin; 
begin 
skin:=Tskin.Create(owner); 
skin.ShowModal; 
skin.Free; 
{ 
try 
if bsOpenSkinDialog1.Execute then 
bsSkinData1.LoadFromFile(bsOpenSkinDialog1.FileName); 
except 
end;       } 
 
//IniFile1 := TIniFile.Create (ExtractFilePath (Application.ExeName) + 'set.ini');    //创建一个INI文件 
//inifile1.WriteString('skin','data',bsOpenSkinDialog1.FileName); 
//IniFile1.free; 
end; 
 
procedure TForm1.FormShow(Sender: TObject); 
var inifile1:TIniFile; 
s:string; 
begin 
IniFile1 := TIniFile.Create (ExtractFilePath (Application.ExeName) + 'set.ini');    //创建一个INI文件 
s:=inifile1.ReadString('school','data',s); 
Form1.Caption:=s+'就业管理系统'; 
da.main_q.Open; 
treeshow; 
da.temp.Close; 
da.temp.SQL.Clear; 
da.temp.SQL.Add('select *'); 
da.temp.SQL.Add('from cl'); 
da.temp.Prepared; 
da.temp.ExecSQL; 
da.temp.Open; 
bsSkinStatusPanel3.Caption:='共有'+IntToStr(da.temp.RecordCount)+'个班级'; 
 
end; 
 
procedure TForm1.N12Click(Sender: TObject); 
begin 
Application.Terminate; 
end; 
 
procedure TForm1.N8Click(Sender: TObject); 
var serch:tform4; 
begin 
serch:=TForm4.Create(owner); 
serch.ShowModal; 
serch.Free; 
end; 
 
procedure TForm1.N1Click(Sender: TObject); 
var setun:TForm2; 
begin 
setun:=TForm2.Create(owner); 
setun.ShowModal; 
setun.free; 
 
end; 
 
procedure TForm1.N2Click(Sender: TObject); 
var about:tform8; 
begin 
about:=tform8.Create(owner); 
//about.bsBusinessSkinForm1.SkinData:=main_un.Form1.bsSkinData1; 
about.ShowModal; 
 
about.Free; 
end; 
 
procedure TForm1.bsSkinTreeView1MouseUp(Sender: TObject; 
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer); 
var s,sel,fro,ss,te:string; 
se:TTreeNode; 
 
begin 
ss:='专业'; 
sel:='select st.id,st.co as 身份证,st.na as 姓名,sex.na as 性别,st.bir as 出生年月,cl.na  as 班级,st.age as 年龄,st.high as 身高, st.eyel as 视力(左),st.eyer as 视力(右),st.addr as  住址,st.tel as 电话,st.htel as 手机,jy.na as 就业单位,st.photo'; 
fro:='from st,sex,jy,cl,pa'; 
s:='where st.sex=sex.id and st.cl=cl.id and st.jy=jy.id and pa.id=cl.paid' ; 
da.main_q.Close; 
da.main_q.SQL.Clear; 
da.main_q.SQL.Add('select st.id,st.co as 身份证,st.na as 姓名,sex.na as 性别,st.bir as 出生年月,cl.na  as 班级,st.age as 年龄,st.high as 身高, st.eyel as 视力(左),st.eyer as 视力(右),st.addr as  住址,st.tel as 电话,st.htel as 手机,jy.na as 就业单位,st.photo'); 
da.main_q.SQL.Add('from st,sex,jy,cl,pa'); 
 
//if bsSkinTreeView1.Selected.Parent=nil  then 
//if bsSkinTreeView1.Selected.Text=ss then 
//ShowMessage('选定根专业节点节点') 
//else 
//ShowMessage('选定就业单位根节点'); 
 
if bsSkinTreeView1.Selected.Parent=nil then 
begin 
da.main_q.SQL.Add(s); 
da.main_q.Prepared; 
da.main_q.ExecSQL; 
da.main_q.Open; 
exit; 
end; 
 
if bsSkinTreeView1.Selected.Parent.Parent=nil then 
if bsSkinTreeView1.Selected.Parent.Text=ss then 
begin 
//选到了第一个根节点下的第一个子节点; 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from pa'); 
da.temp1.SQL.Add('where pa.na=:na'); 
da.temp1.Parameters.ParamValues['na']:=bsSkinTreeView1.Selected.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.open; 
te:=''; 
te:=s+ '  and cl.paid=:pid'; 
da.main_q.SQL.Add(te); 
da.main_q.Parameters.ParamValues['pid']:=da.temp1.FieldValues['id']; 
//ShowMessage(da.main_q.SQL.Text+'专业'); 
da.main_q.Prepared; 
da.main_q.ExecSQL; 
da.main_q.Open; 
exit; 
end ; 
if bsSkinTreeView1.Selected.Parent.Parent=nil then 
if bsSkinTreeView1.Selected.Parent.Text<>ss then 
begin 
//选第二个根节点 以下的第一个子节点 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from jy'); 
da.temp1.SQL.Add('where jy.na=:na'); 
da.temp1.Parameters.ParamValues['na']:= bsSkinTreeView1.Selected.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.Open; 
te:=''; 
te:=s+'   and st.jy=:jy'; 
da.main_q.SQL.Add(te); 
da.main_q.Parameters.ParamValues['jy']:=da.temp1.FieldValues['id']; 
jy_jy:=da.temp1.FieldValues['id']; 
//ShowMessage(da.main_q.SQL.Text+'就业单位'); 
da.main_q.Prepared; 
da.main_q.ExecSQL; 
da.main_q.Open; 
exit; 
end; 
 
if bsSkinTreeView1.Selected.Parent.Parent.Parent=nil then 
if  bsSkinTreeView1.Selected.Parent.Parent.Text=ss then 
begin 
//ShowMessage('专业班级'); 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from cl'); 
da.temp1.SQL.Add('where cl.na=:na'); 
da.temp1.Parameters.ParamValues['na']:=bsSkinTreeView1.Selected.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.open; 
te:=''; 
te:=s+'   and st.cl=:cl'; 
da.main_q.SQL.Add(te); 
da.main_q.Parameters.ParamValues['cl']:=da.temp1.FieldValues['id']; 
pa_cl:=da.temp1.FieldValues['id']; 
da.main_q.Prepared; 
da.main_q.ExecSQL; 
da.main_q.Open; 
exit; 
end; 
if bsSkinTreeView1.Selected.Parent.Parent.Parent=nil  then 
if  bsSkinTreeView1.Selected.Parent.Parent.Text<>ss then 
begin 
//ShowMessage('就业单位,专业'); 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from pa'); 
da.temp1.SQL.Add('where pa.na=:na'); 
da.temp1.Parameters.ParamValues['na']:=bsSkinTreeView1.Selected.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.open; 
te:=''; 
te:=s+'   and pa.id=:id and jy.id=:jy'; 
da.main_q.SQL.Add(te); 
da.main_q.Parameters.ParamValues['id']:=da.temp1.FieldValues['id']; 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from jy'); 
da.temp1.SQL.Add('where jy.na=:na'); 
da.temp1.Parameters.ParamValues['na']:= bsSkinTreeView1.Selected.Parent.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.Open; 
da.main_q.Parameters.ParamValues['jy']:=da.temp1.FieldValues['id']; 
da.main_q.Prepared; 
da.main_q.ExecSQL; 
da.main_q.Open; 
exit; 
 
end; 
if bsSkinTreeView1.Selected.Parent.Parent.Parent.Parent=nil  then 
if  bsSkinTreeView1.Selected.Parent.Parent.Parent.Text<>ss then 
begin 
//ShowMessage('就业单位+班级'); 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from cl'); 
da.temp1.SQL.Add('where cl.na=:na'); 
da.temp1.Parameters.ParamValues['na']:=bsSkinTreeView1.Selected.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.open; 
te:=''; 
te:=s+'   and st.cl=:cl and jy.id=:jy'; 
da.main_q.SQL.Add(te); 
da.main_q.Parameters.ParamValues['cl']:=da.temp1.FieldValues['id']; 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from jy'); 
da.temp1.SQL.Add('where jy.na=:na'); 
da.temp1.Parameters.ParamValues['na']:= bsSkinTreeView1.Selected.Parent.Parent.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.Open; 
da.main_q.Parameters.ParamValues['jy']:=da.temp1.FieldValues['id']; 
da.main_q.Prepared; 
da.main_q.ExecSQL; 
da.main_q.Open; 
 
exit; 
 end; 
 if bsSkinTreeView1.Selected.Parent.Parent.Parent.Parent=nil  then 
if  bsSkinTreeView1.Selected.Parent.Parent.Parent.Text=ss then 
begin 
//ShowMessage('专业+就业单位'); 
 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from jy'); 
da.temp1.SQL.Add('where jy.na=:na'); 
da.temp1.Parameters.ParamValues['na']:=bsSkinTreeView1.Selected.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.open; 
te:=''; 
te:=s+'   and jy.id=:jy and cl.id=:id'; 
da.main_q.SQL.Add(te); 
da.main_q.Parameters.ParamValues['jy']:=da.temp1.FieldValues['id']; 
da.temp1.Close; 
da.temp1.SQL.Clear; 
da.temp1.SQL.Add('select *'); 
da.temp1.SQL.Add('from cl'); 
da.temp1.SQL.Add('where cl.na=:na'); 
da.temp1.Parameters.ParamValues['na']:= bsSkinTreeView1.Selected.Parent.Text; 
da.temp1.Prepared; 
da.temp1.ExecSQL; 
da.temp1.Open; 
da.main_q.Parameters.ParamValues['id']:=da.temp1.FieldValues['id']; 
da.main_q.Prepared; 
da.main_q.ExecSQL; 
da.main_q.Open; 
exit; 
 end; 
 
 
 end; 
 
 
procedure TForm1.FormCreate(Sender: TObject); 
 VAR 
 reg:tregistry; 
 skin_s:string; 
begin 
 reg:=tregistry.Create; 
 reg.RootKey:=hkey_local_machine; 
 reg.OpenKey('\software\microsoft\windows\bl_soft',true); 
 if  reg.ValueExists('skin') then 
  begin 
   skin_s:=reg.ReadString('skin'); 
  end 
 else 
  begin 
   reg.WriteString('skin',ExtractFilePath(Application.ExeName)+'bsf\lime\skin.ini'); 
   skin_s:=ExtractFilePath(Application.ExeName)+'bsf\lime\skin.ini'; 
  end; 
 bsCompressedStoredSkin1.LoadFromIniFile(skin_s); 
 bsSkinData1.LoadCompressedStoredSkin(bsCompressedStoredSkin1); 
end; 
 
procedure TForm1.bsSkinDBGrid1MouseUp(Sender: TObject; 
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer); 
var info:tform9; 
  begin 
info:=TForm9.Create(owner); 
info.ShowModal; 
info.Free; 
 
end; 
 
end.