📄 udmfunc.pas
字号:
unit uDMFunc;
interface
uses SysUtils, dmPJg, uPJgWsServerIntf, uSystemIni, DBGrids, ComObj,
Classes, Types, uNodeLabel, Controls, Forms, uConstUtils, JGLRIntf,
frmJGKmTs, ActiveX, CELLLib_TLB, uNodeUtils, DBCtrls;
//连接WebService
function ConnectWS(const sWSDir: string): Boolean;
//登录系统
function Login(const sUid, sPwd: string;
var sName, sQx, sSsds: string; var lSys: Boolean): Smallint;
//用户信息
function UserInfo(DBGrid: TDBGrid): Smallint;
//用户存盘
function UserSave(const sUid, sPwd, sName, sQx, sSsds: string;
const lSys: Boolean = False): Smallint;
//删除用户
function UserDelete(const sUid: string): Smallint;
//读取单条用户信息,必须执行完UserInfo之后运行
procedure UserInfoRec(var sUid, sPwd, sName, sQx, sSsds: string;
var lSys: Boolean);
//判断用户是否存在,必须执行完UserInfo之后运行
function UserExists(const sUid: string): Boolean;
//读当前记录号
function RecordNO: LongInt; overload;
//设当前记录号
procedure RecordNo(const index: Longint); overload;
//当前记录数
function RecordCount: LongInt;
//读取主地图
function ReadMainMap(var sCaption: string; const sFile: string): Smallint;
//读地市地图
function ReadMap(const sDsbh, sFile: string): Smallint;
//设置主地图
function WriteMainMap(const sCaption, sFile: string): Smallint;
//设置地市地图
function WriteMap(const sDsbh, sFile: string): Smallint;
//删除地市
function DsbhDelete(const sDsbh: string): Smallint;
//保存地市
function DsbhSave(const sDsbh, sDsmc, sDsIP: string; iDsPort: Word;
const sDsVIP: string; iDsVPort, iDsLeft, iDsTop, iDsPWidth,
iDsPHeight: Word; const sDsPbh: string;
lHaveXs,lDataInUpDpt: Boolean; const sDsDB: String;
const iDsJb: Smallint): Smallint;
//保存地市预警时间
function DsYjTimeSave(const sDsbh: string;
dYjtime: TDateTime): Smallint;
//读地市信息
function DsInfo(var ANL: ANodeLabel; const path: string; parent: TWinControl;
form: TForm): Smallint; overload;
function DsInfo(var aDs: TCityDynArray): Smallint; overload;
function DsInfo(var aDs: TString2Array): Smallint; overload;
{function DsInfo(nCols, nLeft, nTop, HSpace, VSpace:Integer;
var aNode: TLabelDateTime): Smallint; overload;
}
function DsInfo(var aNode: TLabelDateTimeView): Smallint; overload;
function DsInfo(var aNode: TCheckBoxView): Smallint; overload;
function GetCityURL(const sIP, sVIP: String; const nPort, nvPort: Word): String;
//预警类型设置
function YjlxSave(const sDsbh: string; iBh: Smallint;
const sMc: string; lBz: Boolean): Smallint; overload;
function YjlxSave(const sDsbh: string; aBh: TSmallIntDynArray;
aMc: TStringDynArray; aBz: TBooleanDynArray): Smallint; overload;
//function YjlxInfo(const sDsbh: String; var aBh: TSmallIntDynArray;
// var aMc: TStringDynArray; var aBz: TBooleanDynArray): Smallint;
//读预警信息
function YjlxInfo(const sDsbh: string; var aYjlx: TYjlxDynArray): Smallint;
//设置预警明细项1-11
function YjSet1(const sDsbh: string; fRecMax: Double;
lRecUse: Boolean; fDayMax: Double; lDayUse: Boolean; fMonMax: Double;
lMonUse: Boolean; const sDwdkKm: string; lDwdkUse: Boolean;
const sXmdkKm: string; lXmdkUse: Boolean): Smallint;
function YjSet2(const sDsbh: string; iGdMax, iGdMin: Integer;
lGdUse: Boolean; iGdQxMax, iGdQxMin: Smallint; lGdQxUse: Boolean;
iJkcs: Smallint; lJkcsuse: Boolean; iYqqxMax, iYqqxJsr: Smallint;
lYqqxUse: Boolean): Smallint;
function YjSet3(const sDsbh: string; iFfcsMax, iFfcsTime: Smallint;
lFfcsUse: Boolean): Smallint;
function YjSet4(const sDsbh: string; iGzjjMax: Integer;
lGzjjUse: Boolean; iGdjjMax: Integer; lGdjjUse: Boolean;
iTqMax: Integer; lTqUse: Boolean): Smallint;
function YjSet6(const sDsbh: string; fLzzjBl: Double;
const sLzzjKm: string; lLzzjUse: Boolean; fFxzbBl: Double;
const sFxzbKm: string; lFxzbUse: Boolean; fZxjfBl: Double;
const sZxjfKm: string; lZxjfUse: Boolean): Smallint;
function YjSet8(const sDsbh, sZzglfKm: string;
lZzglfUse: Boolean): Smallint;
function YjSet10(const sDsbh: string; fZxyskFse, fZxyskYe: Double;
const sZxyskKm: string; lZxyskUse: Boolean; fZxyfkFse,
fZxyfkYe: Double; const sZxyfkKm: string; lZxyfkUse: Boolean;
fQtyskFse, fQtyskYe: Double; const sQtyskKm: string;
lQtyskUse: Boolean; fQtyfkFse, fQtyfkYe: Double;
const sQtyfkKm: string; lQtyfkUse: Boolean): Smallint;
function YjSet9(const sDsbh: string; fGjsxfBl: Double;
const sGjsxfKm: string; lGjsxfUse: Boolean; fDksxfBl: Double;
const sDksxfKm: string; lDksxfUse: Boolean): Smallint;
function YjSet11(const sDsbh: string; fRecMaxJ, fRecMaxD: Double;
lRecUse: Boolean; fDayMaxJ, fDayMaxD: Double; lDayUse: Boolean;
fMonMaxJ, fMonMaxD: Double; lMonUse: Boolean): Smallint;
//预警设置信息
function YjSetInfo(const sDsbh: string): smallint;
//预警设置明细信息1-11
function YjSet1Info(var fRecMax: Double;
var lRecUse: Boolean; var fDayMax: Double; var lDayUse: Boolean;
var fMonMax: Double; var lMonUse: Boolean; var sDwdkKm: string;
var lDwdkUse: Boolean; var sXmdkKm: string; var lXmdkUse: Boolean): Smallint;
function YjSet2Info(var iGdMax, iGdMin: Integer;
var lGdUse: Boolean; var iGdQxMax, iGdQxMin: Smallint;
var lGdQxUse: Boolean; var iJkcs: Smallint; var lJkcsuse: Boolean;
var iYqqxMax, iYqqxJsr: Smallint; var lYqqxUse: Boolean): Smallint;
function YjSet3Info(var iFfcsMax, iFfcsTime: Smallint;
var lFfcsUse: Boolean): Smallint;
function YjSet4Info(var iGzjjMax: Integer;
var lGzjjUse: Boolean; var iGdjjMax: Integer; var lGdjjUse: Boolean;
var iTqMax: Integer; var lTqUse: Boolean): Smallint;
function YjSet6Info(var fLzzjBl: Double;
var sLzzjKm: string; var lLzzjUse: Boolean; var fFxzbBl: Double;
var sFxzbKm: string; var lFxzbUse: Boolean; var fZxjfBl: Double;
var sZxjfKm: string; var lZxjfUse: Boolean): Smallint;
function YjSet8Info(var sZzglfKm: string;
var lZzglfUse: Boolean): Smallint;
function YjSet9Info(var fGjsxfBl: Double;
var sGjsxfKm: string; var lGjsxfUse: Boolean; var fDksxfBl: Double;
var sDksxfKm: string; var lDksxfUse: Boolean): Smallint;
function YjSet10Info(var fZxyskFse, fZxyskYe: Double;
var sZxyskKm: string; var lZxyskUse: Boolean; var fZxyfkFse,
fZxyfkYe: Double; var sZxyfkKm: string; var lZxyfkUse: Boolean;
var fQtyskFse, fQtyskYe: Double; var sQtyskKm: string;
var lQtyskUse: Boolean; var fQtyfkFse, fQtyfkYe: Double;
var sQtyfkKm: string; var lQtyfkUse: Boolean): Smallint;
function YjSet11Info(var fRecMaxJ, fRecMaxD: Double;
var lRecUse: Boolean; var fDayMaxJ, fDayMaxD: Double; var lDayUse: Boolean;
var fMonMaxJ, fMonMaxD: Double; var lMonUse: Boolean): Smallint;
//读存款利率信息
function CkllInfo(var aCkll: TCkllDynArray): Smallint;
//保存存款利率
function CkllSave(aCkll: TCkllDynArray): Smallint; overload;
function CkllSave(const sZxrq: string; const fHqll, fDqll: Double): Smallint;
overload;
//读贷款利率
function DkllInfo(var aDkll: TDkllDynArray): Smallint;
//存贷款利率
function DkllSave(aDkll: TDkllDynArray): Smallint; overload;
function DkllSave(const iDkqx: Smallint; const fDkll, fFxll: Double): Smallint;
overload;
//读开户银行户数
function KhyhhsInfo: Smallint;
//存开户银行户数
function KhyhhsSave(iHs: Smallint): Smallint;
//读开户银行信息
function KhyhInfo(var aKhyh: TKhyhDynArray): Smallint;
//存开户银行住处
function KhyhSave(aKhyh: TKhyhDynArray): Smallint; overload;
function KhyhSave(const sBh, sMc: string): Smallint; overload;
//删除存款利率
function CkllDelete: Smallint;
//删除贷款利率
function DkllDelete: Smallint;
//删除开户银行
function KhyhDelete: Smallint;
//预警设置信息
function YjSetDsInfo(var aDs: TString2Array): Smallint;
//复制预警设置
function YjSetFz(const sSDsbh, sTDsbh: string): Smallint;
//科目信息
function KmInfo(const sURL: string; DBGrid: TDBGrid): Smallint;
//科目贷款
function KmInfoKmdm: string;
//选择科目
function SelectKm(const sURL: string; var kmh: string): boolean;
function F_ZcfzbGjj_Save(const Dsbh, Ny: string; const Ary:
array of double): smallint;
procedure P_ZcfzbGjj(var Hz: boolean; const Dsbh, Ny: string; var Ary: array
of double);
function F_ZzsybGjj_Save(const Dsbh, Ny: string; const Ary: array of double):
smallint;
procedure P_ZzsybGjj(const Hz: boolean; const Dsbh, Ny: string; var Ary: array
of double);
function F_ZzsyfpbGjj_Save(const Dsbh, Nd: string; const Ary: array of double):
smallint;
procedure P_ZzsyfpbGjj(const Hz: boolean; const Dsbh, Nd: string; var Ary:
array of double);
function F_ZcfzbJf_Save(const Dsbh, Ny: string; const Ary: array of double):
smallint;
procedure P_ZcfzbJf(const Hz: boolean; const Dsbh, Ny: string; var Ary: array
of double);
function F_JfszbJf_Save(const Dsbh, Ny: string; const Ary: array of double):
smallint;
procedure P_JfszbJf(const Hz: boolean; const Dsbh, Ny: string; var Ary: array
of double);
function F_Zhksyeb_Save(const Dsbh, Ny, Zhmc, Khyh, Yhzh: string;
const Ary: array of double): smallint;
procedure P_Zhksyeb(const Hz: boolean; const Dsbh, Ny, Zhmc: string);
procedure P_Zfgjjtjb(const Hz: boolean; const Dsbh, Ny: string);
function F_Zfgjjtjb_Save(const Dsbh, Ny: string; const Ary: array of double;
Ary0: array of integer): smallint;
procedure P_Xmdkb(const Hz: boolean; const Dsbh, Ny: string);
function F_Xmdkb_Save(const Dsbh, Ny, Xh, Dwmc, Xmmc, Lxspjg, Dkhth, Ffrq:
string;
const Dkqx: smallint; const Ary: array of double): smallint;
//省查询预警结果
function ProviceResult(const sCityNum,sYearMonth: String; const nType,
nTypeItem, nPromptLevel,nSort: Smallint; DBGrid: TDBGrid): Smallint; overload;
function ProviceResult(const sCityNum,sYearMonth: String; const nType,
nTypeItem, nPromptLevel,nSort: Smallint; Cell: TCell): Smallint; overload;
//预警回复信息
function ProviceResultRevert(const nType, nTypeItem, nNum:Integer;
DBMemo: TDBMemo): Smallint;
//读提示级别
function GetProvicePromptLevel: smallint;
//设置提示级别
function SetProvicePromptLevel(const nPromptLevel: Smallint): Smallint; overload;
function SetProvicePromptLevel(const sCityNum: string;
const nType, nTypeItem: Smallint;const nNumber: LongInt;
const nPromptLevel: Smallint): Smallint; overload;
function SetProvicePromptLevel(const sCityNum: string;
aType, aTypeItem: TSmallintDynArray;
aNumber: TIntegerDynArray;
const nPromptLevel: Smallint): Smallint; overload;
//读银行帐户信息
function BankAccountInfo(var aBankAccount: TBankAccountDynArray): Smallint; overload;
function BankAccountInfo(DBGrid: TDBGrid): Smallint; overload;
//读银行帐户当前记录值,必须先运行BankAccountInfo
procedure BankAccountRec(var sAccountNum,sAccount: String);
//判断帐户是否存在,,必须先运行BankAccountInfo
function IsExistBankAccount(const sAccountNum: String): Boolean;
//读支行信息
function SubBankInfo(const sCityNum, sBankNum: String;
var aSubBank: TSubBankDynArray): Smallint; overload;
function SubBankInfo(const sCityNum, sBankNum: String;
DBGrid: TDBGrid): Smallint; overload;
//读当前支行信息记录,,必须先运行SubBankInfo
procedure SubBankRec(var sCityNum, sBankNum, sSubBankNum,sSubBank: String);
//判断支行是否存在,必须先运行SubBankInfo
function IsExistSubBank(const sCityNum, sBankNum, sSubBankNum: String): Boolean;
//读分理处信息
function BankOfficeInfo(const sCityNum, sBankNum, sSubBankNum: String;
var aBankOffice: TBankOfficeDynArray): Smallint; overload;
function BankOfficeInfo(const sCityNum, sBankNum, sSubBankNum: String;
DBGrid: TDBGrid): Smallint; overload;
//读当前分理处信息,必须先运行BankOfficeInfo
procedure BankOfficeRec(var sCityNum, sBankNum, sSubBankNum,
sBankOfficeNum, sBankOffice: String);
//判断分理处是否存在,必须先运行BankOfficeInfo
function IsExistBankOffice(const sCityNum, sBankNum, sSubBankNum,
sBankOfficeNum: String): Boolean;
//读归集点信息
function SumUpInfo(const sCityNum: String; var aSumUp: TSumUpDynArray): Smallint; overload;
function SumUpInfo(const sCityNum: String; DBGrid: TDBGrid): Smallint; overload;
//读当前归集点记录,必须先运行SumUpInfo
procedure SumUpRec(var sCityNum, sSumUpNum, sSumUp: String);
//判断归集点是否存在,必须先运行SumUpInfo
function IsExistSumUp(const sCityNum, sSumUpNum: String): Boolean;
//存银行分理处信息
function SaveBankOffice(const sCityNum, sBankNum, sSubBankNum,
sBankOfficeNum, sBankOffice: String): Smallint;
//存支行信息
function SaveSubBank(const sCityNum, sBankNum, sSubBankNum,
sSubBank: String): Smallint;
//删除帐户
function DelBankAccount(const sAccount: String): Smallint;
//删除分理处
function DelBankOffice(const sCity, sBank, sSubBank,
sBankOffice: String): Smallint;
//删除支行
function DelSubBank(const sCity, sBank, sSubBank: String): Smallint;
//删除归集点
function DelSumUp(const sCity, sSumUp: String): Smallint;
//存银行帐户
function SaveBankAccount(const sAccountNum,sAccount: String): Smallint;
//存归集点
function SaveSumUp(const sCity, sSumUpNum, sSumUp: String): Smallint;
//读开户信息
function OpenAccountInfo(const sCity, sBank, sSubBank, sBankOffice,
sAccount, sSumUp: String; DBGrid: TDBGrid): Smallint;
//删除开户信息
function DelOpenAccount(const sCity, sBank, sSubBank, sBankOffice,
sAccount, sSumUp, sOpenAccount: String): Smallint;
//存开户信息
function SaveOpenAccount(const sCity, sBank, sSubBank, sBankOffice,
sAccount, sSumUp, sOpenAccount: String; dBalance: Double;
dtDate: TDate): Smallint;
//读开户当前记录信息,必须先运行OpenAccountInfo
procedure OpenAccountRec(var sCity, sBank, sSubBank, sBankOffice,
sAccount, sSumUp, sOpenAccount: String; var dBalance: Double;
var dtDate: TDate);
//判断开户信息是否存在,必须先运行OpenAccountInfo
function IsExistOpenAccount(const sCity, sBank, sSubBank, sBankOffice,
sAccount, sSumUp, sOpenAccount: String): Boolean;
//银行查询方式0-10
function BankSearch0(const sTxDB:String;aCity, aYearMonth: TStringDynArray; var aData: TDoubleDynArray): smallint;
function BankSearch1(const sTxDB:String;aCity, aYearMonth: TStringDynArray; const sBankNum: string; var aData: TDoubleDynArray): smallint;
function BankSearch2(const sTxDB:String;aCity, aBank: TStringDynArray; const sYearMonth: string; var aData: TDoubleDynArray): smallint;
function BankSearch3(const sTxDB:String;aCity, aAccount: TStringDynArray; const sYearMonth: string; var aData: TDoubleDynArray): smallint;
function BankSearch4(const sTxDB:String;aCity, aYearMonth: TStringDynArray; const sAccount: string; var aData: TDoubleDynArray): smallint;
function BankSearch5(const sTxDB:String;const sCityNum: string; aSumUp, aYearMonth: TStringDynArray; var aData: TDoubleDynArray): smallint;
function BankSearch6(const sTxDB:String;const sCityNum: string; aBank, aYearMonth: TStringDynArray; var aData: TDoubleDynArray): smallint;
function BankSearch7(const sTxDB:String;const sCityNum: string; aAccount, aYearMonth: TStringDynArray; var aData: TDoubleDynArray): smallint;
function BankSearch8(const sTxDB:String;const sCityNum, sBank: string; aSubBank, aYearMonth: TStringDynArray; var aData: TDoubleDynArray): smallint;
function BankSearch9(const sTxDB:String;const sCityNum, sBank: string; aBankOffice, aYearMonth: TStringDynArray; var aData: TDoubleDynArray): smallint;
function BankSearch10(const sTxDB:String;aBank, aYearMonth: TStringDynArray; var aData: TDoubleDynArray): smallint;
//查银行明细
function SearchBankDetail(const sTxDB: String; nIndex: Smallint;
const sParam1, sParam2, sParam3, sParam4: String; DBGrid: TDBGrid): Smallint;
//查财务明细帐
function SearchFinanceDetailedLedger(const sURL, sYearMonth,
sSubject: String; DBGrid: TDBGrid): Smallint;
//查财务总帐
function SearchFinanceGenerlLedger(const sURL, sYearMonth, sSubject: String;
nOrientation: Smallint; DBGrid: TDBGrid): Smallint;
//查财务作证
function SearchFinanceWarrant(const sURL, sDate, sNum: String;
DBGrid: TDBGrid): Smallint;
//查作证当前记录
function SearchFinanceWarrantInfo(var sDate,sNum,sSummary: String):smallint;
function ReadGenerlLedgerSubject: String;
function ReadGzpzh: String;
//取当前本地记录集
function CurrentRecordSet: variant; overload;
//设置当前记录集
procedure CurrentRecordSet(vData: Variant); overload;
procedure CurrentRecordSet(vData: Variant; DBGrid: TDBGrid);overload
//function SearchCityRecordCount: smallint;
//function SearchCityRecord: variant; overload;
//procedure SearchCityRecord(vData: Variant); overload;
//procedure SearchCityRecord(vData: Variant;DBGrid: TDBGrid); overload;
//取地市当前记录集
function CurrentCityRecordCount: smallint;
//设置地市当前记录集
function CurrentCityRecordSet: variant; overload;
procedure CurrentCityRecordSet(vData: Variant); overload;
procedure CurrentCityRecordSet(vData: Variant; DBGrid: TDBGrid);overload
//定位明细帐
function LocateDetailedLedger(const bDate,bNum,bDebit,bCredit: Boolean;
const sDate,sNum: String; const dDebit,dCredit: Double): integer;
//读当前操作(地市)记录号
function RecordNOCity: LongInt; overload;
//设置当前操作(地市)记录号
procedure RecordNoCity(const index: Longint); overload;
//读取定时选项
function LoadTimingOption(var bPrompt: Boolean; var nPrompt: Smallint;
var bTiming: Boolean; var nTimingForm: Smallint;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -