DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: monica9612
今日帖子: 0
在线用户: 2
导航: 论坛 -> 发布代码 斑竹:liumazi,ruralboy  
作者:
男 gselec (海宏) ★☆☆☆☆ -
盒子活跃会员
2003/9/5 18:04:25
标题:
会计科目界面代码。 浏览:6519
加入我的收藏
楼主: //会计科目是会计必须的部分。这是我模仿速达3000做的。unit UntSubject;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, StdCtrls, Buttons, fcTreeView,StrUtils,ImgList, ComCtrls,
  UntEditSubject;

type
  Tfrm_Subject = class(TForm)
    Query_M: TADOQuery;
    PageControl_Main: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    TabSheet3: TTabSheet;
    TabSheet4: TTabSheet;
    TabSheet5: TTabSheet;
    TabSheet6: TTabSheet;
    cmd_OK: TBitBtn;
    cmd_AddThis: TBitBtn;
    cmd_AddLow: TBitBtn;
    cmd_Edit: TBitBtn;
    cmd_Delete: TBitBtn;
    cmd_Print: TBitBtn;
    cmd_Return: TBitBtn;
    ImageList_M: TImageList;
    Tree1: TfcTreeView;
    Tree2: TfcTreeView;
    Tree3: TfcTreeView;
    Tree4: TfcTreeView;
    Tree5: TfcTreeView;
    Tree6: TfcTreeView;
    Query_Company: TADOQuery;
    Query_R: TADOQuery;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure cmd_ReturnClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure cmd_EditClick(Sender: TObject);
    procedure Tree1DblClick(TreeView: TfcCustomTreeView; Node: TfcTreeNode;
      Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
    procedure cmd_DeleteClick(Sender: TObject);
    procedure cmd_AddThisClick(Sender: TObject);
    procedure cmd_AddLowClick(Sender: TObject);
  private
    fRunMode:integer;
    fAddedID:string;
    fAddMode:integer;
  public
    Function ShowTrees(oTree:tFcTreeView;oData:tAdoQuery;sFilter:string;nMode:Integer):Boolean;
    Function ShowAllTrees:Boolean;
    Function GetSelectedTree(const lNeedInfo:Boolean=False):tFcTreeView;
    Function GetSelectedNode(const lNeedInfo:boolean=False):tFcTreeNode;
    Function GetSelectedItem(const lNeedInfo:Boolean=True):string;
  published
    Property nRunMode:integer read fRunMode write fRunMode default 0;   //0=修改,1=选择
    Property sAddedID:string read fAddedID write fAddedID;
    property nAddMode:integer read fAddMode write fAddMode default 0;   //0=添加同级科目,1=添加下级科目
  end;

const
    nImageIndexI=44;
    nImageIndexO=45;
    nSubImageIndex=2;
    nAppendMode=0;
    nClearMode=1;
Var
  frm_Subject: Tfrm_Subject;

implementation
uses untcMdi,Gs_Class,Gs_Function;

{$R *.dfm}

//----------------------树显示执行模块------------------------------//
Function tFrm_Subject.ShowTrees(oTree:tFcTreeView;oData:tAdoQuery;sFilter:string;nMode:Integer):Boolean;
var
    oRootNode,oNode,oNode2,oNode3:tFcTreeNode;
    sID,sName,sText:string;
    i,j,nWay,nLevel,nLevelOld:Integer;
Begin
    Try
        oData.Filter:=sFilter;
        oData.Filtered:=True;
    except
        application.MessageBox(pChar('设置过滤条件失败!'+#13+sFilter),'条件过滤',32);
        Exit;
    End;
    if nMode=nClearMode then oTree.Items.Clear;
    With oData do Begin
        i:=0; nLevel:=0; nLevelold:=0;
        //oRootNode:=oTree.Items.Add(Nil,'根节点');
        oData.first;                                      //首节点
        While Not eof do Begin
            nLevel:=FieldByName('nLevel').AsInteger;
            nWay:=FieldByName('nWay').AsInteger;
            sID:=FieldByName('sID').asString;
            sName:=FieldByName('sName').AsString;
            sText:=sID+ DupeString(' ',8)+Trim(sName);
            If nLevel=0 then
              begin
                oNode:=oTree.Items.Add(Nil,sText);
                oNode.ImageIndex:=iif(nWay=1,nImageIndexI,nImageIndexO);
              end
            Else
            Begin
                if nLevelOld<>0 then begin
                  if nLevel<nLevelOld then
                    for j:=nLevel to nLevelOld-1 do
                    begin
                      oNode:=oNode.Parent;  //获得上级节点:倒退n-1
                    end;
                  if nLevel>nLevelOld then
                    oNode:=oNode2;          //获得上级节点:当前节点
                end;
                oNode2:=oTree.Items.AddChild(oNode,sText);
                oNode2.ImageIndex:=iif(nWay=1,nImageIndexI,nImageIndexO);
            End;
            i:=i+1;
            nLevelOld:=nLevel;
            oData.Next;
        End;
    End;
End;
//-----------------树显示的主调度程序----------------------//
Function tFrm_Subject.ShowAllTrees:Boolean;
Begin
    With Query_M do begin
        SQL.Clear;
        Sql.Add('Select * from Subject Where left(sID,1)=:sIDSign Order By sID');
        //设置列表显示 1
        Close;
        Parameters.ParamValues['sIDSign']:='1';
        Open;
        ShowTrees(Tree1,Query_M,',0);
        //列2
        Close;
        Parameters.ParamValues['sIDSign']:='2';
        Open;
        ShowTrees(Tree2,Query_M,',0);
        //列3
        Close;
        Parameters.ParamValues['sIDSign']:='3';
        Open;
        ShowTrees(Tree3,Query_M,',0);
        //列4
        Close;
        Parameters.ParamValues['sIDSign']:='4';
        Open;
        ShowTrees(Tree4,Query_M,',0);
        //列5
        Close;
        Parameters.ParamValues['sIDSign']:='5';
        Open;
        ShowTrees(Tree5,Query_M,',0);
        //列6
        Close;
        Parameters.ParamValues['sIDSign']:='6';
        Open;
        ShowTrees(Tree6,Query_M,',0);
        //恢复所有数据
        Close;
        Filter:=';  Filtered:=False;
        SQL.Clear;
        SQL.Add('Select * from Subject');
        Open;
    End;
End;
//----返回选定的树-----------------//
Function tFrm_Subject.GetSelectedTree(const lNeedInfo:Boolean=False):tFcTreeView;
Begin
    Result:=nil;
    case PageControl_Main.ActivePageIndex of
      0:Result:=Tree1;
      1:Result:=Tree2;
      2:Result:=Tree3;
      3:Result:=Tree4;
      4:Result:=Tree5;
      5:Result:=Tree6;
    end;
    if not Assigned(Result) then begin Result:=nil; if lNeedInfo then messagebox(handle,'没有选择树项目!','选择树',0); exit; end;
End;
//------------返回当前选定的项目Node----------------//
Function tFrm_Subject.GetSelectedNode(const lNeedInfo:boolean=False):tFcTreeNode;
var oNood:tFcTreeNode;
Begin
    Result:=nil;
    case PageControl_Main.ActivePageIndex of
      0:oNood:=Tree1.selected;
      1:oNood:=Tree2.Selected;
      2:oNood:=Tree3.Selected;
      3:oNood:=Tree4.Selected;
      4:oNood:=Tree5.Selected;
      5:oNood:=Tree6.Selected;
    end;
    if not Assigned(oNood) then begin if lNeedInfo then messagebox(handle,'没有选择项目!','选择科目先',0); exit; end;
    Result:=oNood;
End;
//-------查找当前选定的科目记录,并返回其编号----------------//
Function tFrm_Subject.GetSelectedItem(const lNeedInfo:Boolean=True):String;
var
    oNood:tFcTreeNode;
    s:string;
Begin
    Result:=';
    if Query_M.IsEmpty then begin if lNeedInfo then application.MessageBox('没有数据可以处理!','没有数据',0); exit; end;
    oNood:=GetSelectedNode();
    if on_ood=nil then begin if lNeedInfo then application.MessageBox('没有选择科目项目!','没有选择科目',0); exit; end;
    s:=Trim(oNood.Text);
    if StrToIntDef(s,0)<1000 then s:=Trim( leftStr(s,Pos(dupeString(' ',6),s)) );
    if s=' then begin if lNeedInfo then messagebox(handle,'请先选择科目项目!','选择科目先',0); exit; end;
    Query_M.Locate('sID',s,[loCaseInsensitive]);
    if Query_M.Eof then begin if lNeedInfo then application.MessageBox(pChar('查找编号失败!'+s),'编号',32); exit; end;
    Result:=s;
End;

procedure Tfrm_Subject.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
    action:=caFree;
end;

procedure Tfrm_Subject.cmd_ReturnClick(Sender: TObject);
begin
    close;
end;

procedure Tfrm_Subject.FormCreate(Sender: TObject);
begin
    ShowAllTrees;
    PageControl_Main.ActivePageIndex:=0;
  
end;

procedure Tfrm_Subject.cmd_EditClick(Sender: TObject);
var
    frm_EditSubject:tFrm_EditSubject;
    s,sname:string;
begin
    s:=GetSelectedItem;
    if s=' then exit;
    frm_EditSubject:=tFrm_EditSubject.Create(self);
    with frm_EditSubject do begin
        sSubjectID:=s;
        nRunMode:=0;                  //运行模式:0=修改,1=添加
        nrLevel:=Query_M.FieldValues['nLevel'];
        edt_sID.ReadOnly:=true;
        edt_sID.Text:=Query_M.FieldValues['sID'];
        edt_sName.Text:=Query_M.FieldValues['sName'];
        edt_sShort.Text:=Query_M.FieldValues['sShort'];
        edt_sComment.Text:=Query_M.FieldValues['sComment'];
        rdb_nWayI.Checked:=(Query_M.FieldByName('nWay').AsInteger=1);
        rdb_nWayO.Checked:=not rdb_nWayi.Checked;
        chk_lcMoney.Checked:=Query_M.FieldByName('lcMoney').AsBoolean;
        cbx_sCompany.LookupValue:=Query_M.FieldValues['sCompany'];

        ShowModal;
        if ModalResult<>mrOK then exit;
    end;
    Try
        Query_M.Close;
        Query_M.Open;
        sName:=Query_M.Lookup('sID',s,'sName');
        if sName<>' then
          With GetSelectedNode Do begin
              Text:=s+DupeString(' ',8)+sName ;
          End;
    Except
    End;
end;

procedure Tfrm_Subject.Tree1DblClick(TreeView: TfcCustomTreeView;
  Node: TfcTreeNode; Button: TMouseButton; Shift: TShiftState; X,
  Y: Integer);
var sID:string;
begin
    sID:=GetSelectedItem(False);
    if sID=' then exit;
    if nRunMode=0 then cmd_Edit.Click;     //修改模式,正常模式

end;

procedure Tfrm_Subject.cmd_DeleteClick(Sender: TObject);
var
    v:variant;
    s:string;
    b:Boolean;
    nim,nom,nf,ne:Real;
begin
    s:=GetSelectedItem;
    if s=' then exit;
    with Query_M do begin
        v:=LookUp('sID',s,'lSystem;niMoney;noMoney;nEnd;nFirst');
        if (VarType(v) in [VarNull]) then begin application.MessageBox('找不到该项目!','项目',0); exit; End;
        b:=iif(v[0]=Null,True,v[0]);
        nim:=iif(v[1]=Null,0,v[1]);  nom:=iif(v[2]=Null,0,v[2]);
        nf:=iif(v[4]=Null,0,v[4]);  ne:=iif(v[3]=Null,0,v[3]);
        if b then begin application.MessageBox('系统创建的项目不能删除!!','系统项目',0); exit; End;
        if (nim<>0) or (noM<>0) or (nf<>0) or (ne<>0) then begin application.MessageBox('该项目已经有发生额,不允许删除!!','发生额',32); exit; end;
        //判断是否有下级子科目
        Try
            Query_R.SQL.Text:='Select Count(*) as nCount from Subject '+
              'Where Left(sID,'+inttostr(length(s))+')=''+s+'' And '+
              'nLevel>(Select top 1 nLevel from Subject Where sID=''+s+'' Order By nLevel Desc)';
            Query_R.Open;
            if not Query_R.IsEmpty then
              if Query_R.Fields[0].AsInteger>0 then
                begin
                  Messagebox(handle,'该科目包含子项目,不能删除!!','子科目',32);
                  Exit;
                End;
            Query_R.Close;
        Except
            messagebox(handle,'系统检查该科目是否包含子科目失败,请手工检查之,若包含子科目请勿删除!','自动检查子科目',32);
        End;
        
        if application.MessageBox('确认要删除吗?','删除确认',32+4+256)<>6 then exit;

        With Query_R do
        Try
            close;
            SQL.Clear;
            SQL.Add('Delete From Subject Where sID=''+s+'');

            connection.begintrans;
            ExecSQL;                                           //执行删除
            connection.CommitTrans;
            GetSelectedNode.Delete;
        Except
            connection.RollbackTrans;
            Application.MessageBox('删除失败!!','删除失败',32);
            Exit;
        End;
    End;
end;

procedure Tfrm_Subject.cmd_AddThisClick(Sender: TObject);
var
    s,sCurID,sValue:string;
    nLevel,nLen:Integer;
    nMax:Double;
    lMax:boolean;
    vInfo:variant;
    oNood:tFcTreeNode;
begin
    s:=GetSelectedItem(False);
    oNood:=GetSelectedNode;
    sCurID:=s;                                 //保存当前编号
    if (s=') and (nAddMode=1) then begin nAddMode:=0; messagebox(handle,'请选择子科目的上级科目!','选择上级科目',0); Exit; End;
    //确定选择信息
    vInfo:=NULL;
    if s=' then                               //没有选择项目,在增加下级科目时不出现
      begin
        s:=IntToStr(PageControl_Main.ActivePageIndex+1);
        nLevel:=nAddMode;                      //默认级别,是1级则一级,否则0级
        nLen:=1;
        lMax:=False;
      end
    Else                                       //选择了级别的,取前边的数字
      begin
        vInfo:=Query_M.Lookup('sID',sCurID,'nLevel;sName;nWay;lcMoney');
        If (VarType(vInfo) in [VarNull]) then  //找不到数据
            nLevel:=0+nAddMode
        Else begin
            nLevel:=iif(vInfo[0]=NULL,0,vInfo[0])+nAddMode;      //找到了,同级则同级,下级则加1
            lMax:=True;
        End;
        // nLen:=iif(nAddMode=1,length(s),
        //     Length(s)-(nLevel+ iif(nLevel=0,1,0))*3);  //同级长度减3X,下级不变
        nLen:=Length(s)-iif(nAddMode=1,0,1)*3;
        s:=iif(nAddMode=1,s,leftstr(s,nLen));                    //同级编号取减,下级不变
      End;
    //执行选择,获取当前最大编号
    Query_R.Close;
    Query_R.SQL.Text:='Select Top 1 sID from Subject '+
        'Where nLevel='+IntToStr(nLevel)+' And '+
        'Left(sID,'+IntToStr(nLen)+')=''+s+'' Order By sID Desc';
    Try
        Query_R.Open;
        lMax:=not Query_R.IsEmpty;          //如果找到项目了,则可以取最大,不允许修改,否则允许修改
        if Query_R.IsEmpty then
            sValue:='
        Else
            if Query_R.Fields[0].AsString=NULL then sValue:=' else sValue:=Query_R.Fields[0].AsString;
        Query_R.Close;
    Except
        Application.MessageBox('自动获取最大编号失败!请手工填写!','手工填写',32);
        lMax:=False;
    End;
    if sValue=' then begin
        nMax:=StrToFloatDef(s+DupeString('0',(1+nAddMode+iif(nAddMode=0,0,-1))*3),  //nLevel+1-nAddMode
            (PageControl_Main.ActivePageIndex+1)*1000);
        sValue:=FloattoStr(nMax);
    End;
    nMax:=strtoFloatDef(sValue, (PageControl_Main.ActivePageIndex+1)*1000)+1;
    if nMax>=9999999999999999 then begin application.MessageBox('长度超过16位后系统将难以控制,添加终止。','长度超长',0); Exit; End; 
    sValue:=StepNumToStr(nMax);
    //自动增加,并且调用显示界面
    frm_EditSubject:=tFrm_EditSubject.Create(self);
    With frm_EditSubject do begin
        nRunMode:=1;                          //添加模式
        nrLevel:=nLevel;                      //级别
        edt_sID.text:=sValue;                 //新增加编号
        edt_sID.Readonly:=lMax;               //是否允许修改
        edt_sName.text:=DupeString(' ',nLevel*3)+ '新增科目['+edt_sID.text+']';
        edt_sShort.Text:=';
        edt_sComment.Text:=';
        cbx_sCompany.LookupValue:=';
        if ( VarType(vInfo) in [VarNull,VarEmpty]) then //当没有找到当前科目记录
          Begin
            chk_lcMoney.Checked:=False;
            rdb_nWayI.Checked:=True;
          end
        Else
          Begin
            chk_lcMoney.Checked:=iif(vInfo[3]=NULL,False,vInfo[3]);
            rdb_nWayI.Checked:=( iif(vInfo[2]=NULL,1,vInfo[2])=1 );
          End;
        if ShowModal<>mrOK then begin nAddMode:=0; exit; end;       //用户取消了
    End;
    //重新打开数据表
    Try
        Query_M.Close;
        Query_M.SQL.Text:='Select * From Subject';
        Query_M.Open;
    Except
        Messagebox(handle,'打开数据库出错,您可以关闭之后重试!','数据库',0);
    End;
    //设置该项目的显示
    With Query_R do begin
        Close;
        SQL.Text:='Select * From Subject Where sID=''+sAddedID+'';
        Try
            Open;
            if isEmpty then begin application.MessageBox(pChar('查找新增加的科目信息出错,您可以在重新打开本窗口时看到该科目。编号='+sAddedID),'科目找不到',32); Exit;  End;
            sValue:=iif(FieldValues['sID']=Null,'未知编号',Trim(fieldvalues['sID']))+DupeString(' ',8);
            sValue:=sValue+iif(FieldValues['sName']=Null,'未知名称',trim(fieldvalues['sName']));
            nLevel:=iif(FieldValues['nLevel']=Null,0,FieldValues['nLevel']);
        Except
            application.MessageBox(pChar('查找新增加的科目信息出错,您可以在重新打开本窗口时看到该科目。编号='+sAddedID),'科目找不到',32);
            Exit;
        End;
        if nAddMode=0 then                 //增加同级科目
          begin
              if not Assigned(oNood) then
                  oNood:=GetSelectedTree.Items.Add(nil,sValue)
              else
                begin
                  if nLevel=0 then
                      GetSelectedTree.Items.Add(nil,sValue)
                  else
                      GetSelectedTree.items.AddChild(oNood.Parent,sValue);
                end;
          End
        else                               //增加下级科目
          begin
              if not Assigned(oNood) then
                  oNood:=GetSelectedTree.Items.AddChild(nil,sValue)
              else
                Begin
                  if nLevel=0 then
                      GetSelectedTree.Items.Add(nil,sValue)
                  else
                      GetSelectedTree.Items.AddChild(oNood,sValue);
                end;
          end;
    End;

    self.nAddMode:=0;                          //恢复默认值:添加同级科目=0
end;

procedure Tfrm_Subject.cmd_AddLowClick(Sender: TObject);
begin
    nAddMode:=1;
    cmd_AddThis.Click;
end;

End.


----------------------------------------------
海宏软件,自动化专家
作者:
男 gselec (海宏) ★☆☆☆☆ -
盒子活跃会员
2003/9/5 18:05:40
1楼: //关联的修改会计界面的子窗体
unit UntEditSubject;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Mask, DBCtrlsEh, DBLookupEh, ExtCtrls, Buttons, DB,wwdblook,
  ADODB,StrUtils;

type
  Tfrm_EditSubject = class(TForm)
    Label1: TLabel;
    edt_sID: TEdit;
    Label2: TLabel;
    edt_sName: TEdit;
    Label3: TLabel;
    edt_sShort: TEdit;
    Label4: TLabel;
    edt_sComment: TEdit;
    Label5: TLabel;
    Label6: TLabel;
    chk_lcMoney: TCheckBox;
    grp_nWay: TGroupBox;
    Rdb_nWayI: TRadioButton;
    Rdb_nWayO: TRadioButton;
    cmd_OK: TBitBtn;
    cmd_Cancel: TBitBtn;
    DataSource_M: TDataSource;
    cbx_sCompany: TwwDBLookupCombo;
    Query_E: TADOQuery;
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure cmd_OKClick(Sender: TObject);
  private
    fSubjectID:string;
    fRunMode:Integer;
    frLevel:integer;
  public
    { Public declarations }
  published
    property sSubjectID:string read fSubjectID write fSubjectID;
    Property nRunMode:integer read fRunMode write fRunMode default 0; //运行模式,0=修改,1=添加
    property nRLevel:integer read frLevel write frLevel default 0;    //级别
  End;

var
  frm_EditSubject: Tfrm_EditSubject;

implementation
uses UntcMDI,UntSubject,Gs_Class;

{$R *.dfm}

procedure Tfrm_EditSubject.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
    action:=caFree;
end;

procedure Tfrm_EditSubject.cmd_OKClick(Sender: TObject);
begin
    With Query_E do begin
        Close;
        SQL.Clear;
        if nRunMode=0 then                      //修改
          begin
            SQL.Add('Update Subject Set sID=:sIDV,sName=:sNameV,sShort=:sShortV,');
            SQL.add('sComment=:sCommentV,nWay=:nWayV,lcMon_ey=:lcMoneyV,sCompany=:sCompanyV');  //
            SQL.Add(' Where rTrim(lTrim(sID))=''+Trim(edt_sID.Text)+'');
          end
        else begin                              //增加、插入
            frm_Subject.sAddedID:=edt_sID.Text;
            SQL.Add('Insert Into Subject ');
            SQL.Add('(sID,sName,nLevel,sShort,sComment,sCompany,nWay,lcMoney,');
            SQL.Add('nGold,niMoney,noMoney,nFirst,nEnd,lSystem) ');
            SQL.Add('Values(:sIDV,:sNameV,:nLevelV,:sShortV,:sCommentV,:sCompanyV,:nWayV,:lcMoneyV,');
            SQL.add('0,0,0,0,0,0)');
            Parameters.ParamValues['nLevelV']:=nrLevel;
        End;
        //参数
        Parameters.ParamValues['sIDV']:=Trim(edt_sID.Text);
        Parameters.ParamValues['sNameV']:=DupeString(' ',nrLevel*3)+Trim(edt_sName.text);
        Parameters.ParamValues['sShortV']:=edt_sShort.Text;
        Parameters.ParamValues['sCommentV']:=edt_sComment.Text;
        Parameters.ParamValues['sCompanyV']:=Trim(cbx_sCompany.LookupValue);
        Parameters.ParamValues['nWayV']:=iif(rdb_nWayI.Checked,1,2);
        Parameters.ParamValues['lcMoneyV']:=chk_lcMoney.Checked;
        //执行
        Try
            Query_E.Connection.BeginTrans;
            Query_E.ExecSQL;
            Query_E.Connection.CommitTrans;
            ModalResult:=mrOK;
        Except
            Query_E.Connection.RollbackTrans;
            Application.MessageBox('执行更新/添加SQL错误','错误',0);
            Exit;
        End;
    End;
end;

end.

----------------------------------------------
海宏软件,自动化专家
作者:
男 gselec (海宏) ★☆☆☆☆ -
盒子活跃会员
2003/9/5 18:11:23
2楼: //关联数据库的结构表
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[subject]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[subject]
GO

CREATE TABLE [dbo].[subject] (
  [sid] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  [nlevel] [numeric](9, 4) NULL ,
  [sname] [varchar] (254) COLLATE Chinese_PRC_CI_AS NULL ,
  [sshort] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  [nway] [numeric](10, 4) NULL ,
  [lcmoney] [bit] NULL ,
  [ngold] [numeric](8, 4) NULL ,
  [nimoney] [numeric](20, 4) NULL ,
  [nomoney] [numeric](20, 4) NULL ,
  [nfirst] [numeric](20, 4) NULL ,
  [nend] [numeric](20, 4) NULL ,
  [lsystem] [bit] NULL ,
  [scompany] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
  [scomment] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GO



----------------------------------------------
海宏软件,自动化专家
作者:
男 zizii (高高高级馒头) ★☆☆☆☆ -
神秘会员
2003/9/5 18:38:59
3楼: 有没有代码直接传上来或者传到
http://www.eFile.com.cn/eFile/upload.asp
或者传到 ftp://uploads:uploads@2ccc.com
或者发布到 http://www.2ccc.com/uploads.asp
----------------------------------------------
维护世界和平,共创美好盒子。
作者:
男 study9 (study9) ★☆☆☆☆ -
普通会员
2003/9/18 14:38:37
4楼: 一下看不清,贴张效果图更好了。辛苦了。
----------------------------------------------
-
作者:
女 red_rose (喵喵) ★☆☆☆☆ -
普通会员
2003/10/11 16:32:40
5楼: 好是好 几是看不懂啊!按此在新窗口浏览图片 按此在新窗口浏览图片 按此在新窗口浏览图片 按此在新窗口浏览图片
----------------------------------------------
我是网上地一条虫
人家俗称叫网虫
最近迷上了BBS,发帖灌水是我最大的乐趣
我是生活在Internet上的一条鱼
天么我在线的时间非常地多
穿梭在神奇地网络
目前我逗留地这个BBS
我每天都会来爹里看一哈子
港句良心话,爹个论坛真地不错
经典地帖子确实好多。我常常想
爹些发帖人是不是吃饱没事做
看的我很爽,但我从不回帖
请不要港我没道德
还是类一句:
看帖不回贴?
枪毙!
 
 
 
 
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行97.65625毫秒 RSS