第一篇:个人财务管理系统
//引入包
import java.awt.GridLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.sql.*;import java.text.DateFormat;import java.text.SimpleDateFormat;import org.apache.log4j.*;import java.util.Calendar;import java.util.Vector;import javax.swing.*;import javax.swing.table.DefaultTableModel;
public class MainTest extends JFrame{
public static final long serialVersionUID = 1l;Vector v=new Vector();private JButton jb1,jb2,jb3,jb4,jb5,jtf3Listener;//按钮 private JScrollPane jsp;//滚动条 private JPanel jp1,jp2,jp3,jp4,jp5,jp6,jserver,jtable;//控件面板
private JLabel jl1,jl2,jl3,jl4,jl5;//标签 private JMenu jm1,jm2;//菜单 private JMenuItem ji1,ji2;//菜单子项 //表格
BankCard bc=new BankCard();//新建类BankCard boolean flag=false;private String version=“V1.5”;private JTextField jtf,jtf2,jtf3,jtf4,jtf5;//文本框
private JMenuBar jmb1;//菜单栏
DefaultTableModel model = new DefaultTableModel();String[] columnNames={“姓名”,“金额”,“日期”,“备注”};//创建日志记录器
private static Logger logger=Logger.getLogger(MainTest.class.getName());
//主程序入口
public static void main(String[] args){ new MainTest();
//窗口初始化
public MainTest(){ }
//窗口初始化
this.setTitle(“个人财务管理系统”+version+“(内测版By ZQ)”);this.setSize(800,300);this.setLocation(450, 300);this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);GridLayout Grid=new GridLayout(1,2);this.setLayout(Grid);this.setResizable(true);
jserver=new JPanel(new GridLayout(7,1));jtable=new JPanel(Grid);
//菜单栏构建
jmb1=new JMenuBar();jm1=new JMenu();jm1.setText(“帮助”);jm2=new JMenu();jm2.setText(“文件”);ji1=new JMenuItem();ji1.setText(“软件须知”);ji1.addActionListener(new MyBtnListener());ji2=new JMenuItem();ji2.setText(“退出”);ji2.addActionListener(new MyBtnListener());jb4=new JButton(“连接”);jb4.addActionListener(new MyBtnListener());jb5=new JButton(“断开”);jb5.addActionListener(new MyBtnListener());jm1.add(ji1);jm2.add(ji2);jmb1.add(jm2);jmb1.add(jm1);jmb1.add(jb4);jmb1.add(jb5);jserver.add(jmb1);
//信息录入框(Label+Message)jp1=new JPanel();jl1=new JLabel(“姓 名:”);jtf=new JTextField(20);jp1.add(jl1);jp1.add(jtf);jserver.add(jp1);
jp2=new JPanel();jl2=new JLabel(“金 额:”);jtf2=new JTextField(20);jp2.add(jl2);jp2.add(jtf2);jserver.add(jp2);
jp3=new JPanel();jl3=new JLabel(“日 期:”);jtf3=new JTextField(14);jtf3Listener=new JButton(“选择”);jtf3Listener.addActionListener(new MyBtnListener());jp3.add(jl3);jp3.add(jtf3);jp3.add(jtf3Listener);jserver.add(jp3);
jp4=new JPanel();jl4=new JLabel(“备 注:”);jtf4=new JTextField(20);jp4.add(jl4);jp4.add(jtf4);jserver.add(jp4);
//服务器连接按钮
jp5=new JPanel();jl5=new JLabel(“服务器:”);jtf5=new JTextField(20);jtf5.setText(“localhost:1433”);jp5.add(jl5);jp5.add(jtf5);jserver.add(jp5);//信息检索 jp6=new JPanel();
jb1=new JButton(“添加”);/* * URL url=MainTest.class.getResource(“20***7527_easyicon_net_128.png”);
Icon icon=new ImageIcon(url);jb1.setIcon(icon);*/ jb1.addActionListener(new MyBtnListener());jb2=new JButton(“查询”);jb2.addActionListener(new MyBtnListener());jb3=new JButton(“余额”);
jb3.addActionListener(new MyBtnListener());jp6.add(jb1);jp6.add(jb2);jp6.add(jb3);jserver.add(jp6);
//创建表格------model.setColumnIdentifiers(columnNames);JTable jt1 = new JTable(null, columnNames);
jt1=new JTable(model);model.addRow(new String[]{“",”“,”“,”“});jt1.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);jt1.setFillsViewportHeight(true);jsp=new JScrollPane(jt1);jtable.add(jsp);
this.add(jserver);this.add(jtable);this.setVisible(true);}
public void TableValue(String[] s){ model.addRow(s);} public class BankCard { private int message = 0;String Name=”“;String sql=”“;Date Date=null;int Money;int i=0;Connection conn=null;Statement stmt=null;ResultSet rs=null;PreparedStatement pstmt = null;ResultSetMetaData rsmd = null;Object ss=null;
public int Save(Person p){ //数据存储 try{
int sum=getSum();if(p.Money<0&&(-p.Money)>sum){
message=0;}else{ stmt = conn.createStatement();
sql= ”insert into BankCard(Name,Money,Date,Message)“ +
”values('“+p.Name+”',“+p.Money+”,'“+p.Date+”','“+p.Message+”')“;stmt.execute(sql);System.out.println(p);System.out.println();
System.out.println(”添加成功!“);message=1;} }catch(SQLException e3){logger.error(e3);} return message;} /* public void getMessage(String name,String date){ //检索对象信息
Person p=new Person();
} System.out.println();System.out.println(”---------------检索结 try{
sql=“Select * from BankCard Where Name=”+“'”+name+“' and
pstmt = conn.prepareStatement(sql.toString());
rs = pstmt.executeQuery();rsmd = rs.getMetaData();while(rs.next()){
p.Name=rs.getString(”Name“);p.Date=rs.getString(”Date“);p.Message=rs.getString(”Message“);p.Money=rs.getInt(”Money“);Date=”+“'”+date+“'”;束!---------------“);
}catch(SQLException e3){logger.error(e3);} }*/ public void getMessage(String Message,int idea){ //检索对象信息
Person p=new Person();model.setRowCount(0);
try{
if(Message!=”null“ && idea==1){ //输入null查询所有数据
sql=”Select * from BankCard Where
}else if(Message!=“null” && idea==2){
sql=“Select * from BankCard Where Name=”+“'”+Message+“'”;sql=“Select * from BankCard”;
}else {
}
pstmt = conn.prepareStatement(sql.toString());rs = pstmt.executeQuery();rsmd = rs.getMetaData();Date=“+”'“+Message+”'“;
if(rs.next()==false){JOptionPane.showMessageDialog(getContentPane(),”没有记录,请确认信息是否正确“,”警告!“,JOptionPane.WARNING_MESSAGE);}
do{
p.Name=rs.getString(”Name“);p.Date=rs.getString(”Date“);p.Message=rs.getString(”Message“);p.Money=rs.getInt(”Money“);model.addRow(new System.out.println(p);}while(rs.next());String[]{p.Name,String.valueOf(p.Money),p.Date,p.Message});System.out.println();System.out.println(”---------------检索结束!---------------“);
}catch(SQLException e3){logger.error(e3);} } public int getSum(){ //获取余额
sql=”Select * from BankCard“;rs = pstmt.executeQuery();rsmd = rs.getMetaData();while(rs.next()){ Sum+=rs.getInt(”Money“);} }catch(SQLException e3){logger.error(e3);} pstmt = conn.prepareStatement(sql.toString());int Sum = 0;try{ System.out.println();return Sum;} public int getDay(){ //获取当月天数
Calendar aCalendar=Calendar.getInstance();int Day=aCalendar.get(Calendar.DATE);return Day;} public void Advise(){ //友情提示入口
int Sum = 0;
int Sum1= 0;int Day=getDay();try{ sql=”Select * from BankCard“;rs = pstmt.executeQuery();rsmd = rs.getMetaData();while(rs.next()){
Sum1+=rs.getInt(”Money“);
if(rs.getInt(”Money“)<0)Sum+=rs.getInt(”Money“);} }catch(SQLException e3){logger.error(e3);} if(Day==10 || Day==20 || Day==30 ||(-Sum)>Sum1){ pstmt = conn.prepareStatement(sql.toString());JOptionPane.showMessageDialog(null,”友情提示,截至本月“+Day+”日您已花费:“+(-Sum)+”元----“+”当前余额:“+Sum1+”元“,”警告!“,JOptionPane.WARNING_MESSAGE);}
public boolean testJDBC(String testJDBC){ //建立服务器连接 boolean flag=true;
//[2]建立连接 try{ String sql=”jdbc:sqlserver://“+testJDBC+”;DataBaseName=MoneyManager“;conn=DriverManager.getConnection(sql,”Welcome“,”zhang1298“);
//conn=DriverManager.getConnection(”jdbc:sqlserver://localhost:1433;DataBaseName=MoneyManager“,”sa“,”zhang1298“);System.out.println(”----——--------建立连接成功!------------“);try{ //[1]加载驱动
Class.forName(”com.microsoft.sqlserver.jdbc.SQLServerDriver“);} }catch(ClassNotFoundException e1){logger.error(e1);} System.out.println();Advise();}catch(SQLException e){logger.error(e);flag=false;} return flag;} public boolean ExitJDBC(){ //断开服务器连接
boolean flag=true;
}
public class FrameChange implements Runnable {
public void run(){ int x = MainTest.this.getX();try{
//关闭数据连接
if(null!= stmt){ stmt.close();} if(null!= conn){conn.close();} System.out.println(”-------------数据库关闭成功!-----------“);System.out.println();}catch(SQLException e2){logger.equals(e2);flag=false;} return flag;}
int y = MainTest.this.getY();
for(int i = 0;i <50;i++){
if((i & 1)== 0){
x += 3;
y += 3;
} else {
x-= 3;
y-= 3;
}
MainTest.this.setLocation(x, y);
try {
}
} Thread.sleep(5);// TODO Auto-generated catch block e.printStackTrace();} catch(InterruptedException e){ } }
//添加信息
if(arg0.getSource()==jb1){
public void actionPerformed(ActionEvent arg0){ try{ //按钮监听器
class MyBtnListener implements ActionListener{ if(jtf.getText().length()!=0&&jtf3.getText().length()!=0&&jtf2.getText().length()!=0){
Person p=new Person();p.Name=jtf.getText();
p.Money=Integer.parseInt(jtf2.getText());p.Date=jtf3.getText();p.Message=jtf4.getText();int
n=JOptionPane.showConfirmDialog(getContentPane(),”请确认信息,一旦添加无法更改“,”信息确认!“,JOptionPane.YES_NO_CANCEL_OPTION);
if(n==JOptionPane.YES_OPTION){
int message=bc.Save(p);if(message==0){
JOptionPane.showMessageDialog(getContentPane(),”当前余额:“+bc.getSum()+”元,小于您的取款要求:“+-p.Money+”元,请检查信息是否错误!“,”警告!“,JOptionPane.WARNING_MESSAGE);
jtf2.setText(”“);
}else if(message==1){
jtf.setText(”“);
jtf2.setText(”“);
jtf3.setText(”“);
jtf4.setText(”“);
}
} }else{
new FrameChange().run();
JOptionPane.showMessageDialog(getContentPane(),”请输入完整信息“,”警告!“,JOptionPane.WARNING_MESSAGE);
}
//查询信息 }else if(arg0.getSource()==jb2){
if(jtf.getText().length()==0 && jtf3.getText().length()==0){ //查询所有
bc.getMessage(”null“,0);
}else if(jtf.getText().length()==0&&jtf3.getText().length()!=0){ //按日期查询
bc.getMessage(jtf3.getText().toString(),1);
}else if(jtf.getText().length()!=0&&jtf3.getText().length()==0){ //按人名查询
bc.getMessage(jtf.getText().toString(),2);}
/*else if(jtf.getText().length()!=0&&jtf3.getText().length()!=0){ //按日期,人名查询
bc.getMessage(jtf.getText(), jtf3.getText());}*/ //查询余额
}else if(arg0.getSource()==jb3){
int Sum=bc.getSum();
JOptionPane.showMessageDialog(getContentPane(),”当前余额:“+Sum+”元“,”余额查询“,JOptionPane.WARNING_MESSAGE);
//连接服务器
}else if(arg0.getSource()==jb4){
flag=bc.testJDBC(jtf5.getText());
if(flag){
jtf5.setText(”已连接服务器“);jtf5.setEditable(false);jb4.setEnabled(false);JOptionPane.showMessageDialog(getContentPane(),”
}else{ 无法连接到数据库,服务器未打开或端口错误“,”警告“,JOptionPane.WARNING_MESSAGE);
} //断开连接
}else if(arg0.getSource()==jb5){
flag=bc.ExitJDBC();
if(flag){ JOptionPane.showMessageDialog(getContentPane(),”已断开服务器!“,”提示“,JOptionPane.WARNING_MESSAGE);
jtf5.setText(”localhost:1433“);jtf5.setEditable(true);jb4.setEnabled(true);JOptionPane.showMessageDialog(getContentPane(),”
}else{ 数据库断开失败,请重试“,”提示“,JOptionPane.WARNING_MESSAGE);
}
//(菜单)帮助-软件介绍
}else if(arg0.getSource()==ji1){ JOptionPane.showMessageDialog(getContentPane(),”软件名称:个人财务管理系统n软件版本:“+version+”(内测版本)n作 者:张强n更新时间:2015-5-24“,”软件简介“,JOptionPane.WARNING_MESSAGE);
;
cldMax=format.format(calendar1.getTime());while(!cld.equals(cldMax)){
//日期选择
}else if(arg0.getSource()==jtf3Listener){
try {
int i=0;
String[] possible =new String[31];DateFormat format = new
Calendar calendar=Calendar.getInstance();Calendar calendar1=Calendar.getInstance();String cld,cldMax;
cld=format.format(calendar.getTime());
//(菜单)文件-退出
}else if(arg0.getSource()==ji2){ int x=MainTest.this.getX();int y=MainTest.this.getY();
for(int i = 0;i <300;i++){
x=x-3;
y=y-2;
MainTest.this.setSize(x, y);
Thread.sleep(1);
}
System.exit(0);SimpleDateFormat(”yyyy-M-dd“);calendar.set(Calendar.DATE,calendar.getActualMinimum(Calendar.DATE));calendar1.set(Calendar.DATE,calendar.getActualMaximum(Calendar.DATE))
possible[i]=cld;
calendar.add(Calendar.DAY_OF_MONTH,1);
cld=format.format(calendar.getTime());
}
possible[i]=cld;String i=i+1;selectedValue=JOptionPane.showInputDialog(null,”请选择:“,”日期“, JOptionPane.INFORMATION_MESSAGE, null, possible, possible[0]).toString();
}
if(selectedValue!=”“){
jtf3.setText(selectedValue);}else{}
// TODO Auto-generated catch block
} catch(Exception e){ } }catch(Exception e){new FrameChange().run();JOptionPane.showMessageDialog(getContentPane(),”请先连接服务器“,”警告!“,JOptionPane.WARNING_MESSAGE);
} //System.out.println(”请先连接服务器“);} }
} }
public class Person {
String Name=”“;
int Money;
String Date=null;
String Message=null;public Person(){};
public Person(String name, int money,String date,String Message){
}
public String toString(){ return ”姓名:“ + Name + ” 金额:“ + Money + ” 日期:“ + Date +” 备super();Name = name;Money = money;this.Date = date;this.Message=Message;
注:"+ Message;} }
第二篇:c++个人财务管理系统
个人财务管理系统
//mynumber.h #include
string password;stringacnumber;string person1;string person2;};const record mark={“notimen”,“non”,0};class account {public: struct record A;struct code B;intcheckacnumber();intcheckpassword();voidoldrecord(const char *filetxt);void inquire(const char *filetxt);void del(const char *filetxt);void increase(const char *filetxt);voidCreateTxt(const char *filetxt);voidprintall(const char *filetxt);voidprintincome(const char *filetxt);voidprintpay(const char *filetxt);voidModifynumber();voidCreateDat();void Initial(const char *filetxt);intendmark(record A);intfindback();voidrecyclebin(const char *filetxt);};//main.cpp #include“mynumber.h” const char *file=“E:RecordFile.txt”;int main(){cout<<“
欢迎使用个人财务管理系统n”;cout<<“-----------n”;cout<<“|
|n”;cout<<“|
1.登陆
|n”;cout<<“|
2.注册
|n”;cout<<“|
cout<<”-----------n“;intn,k,t;cin>>n;account X;if(n==2){X.CreateDat();n=1;} if(n==1)
{k=X.checkacnumber();if(k==0)exit(0);else {t=X.checkpassword();if(t==0)exit(0);else while(1){cout<<”-----------请选择您要进行的操作-----------n“;cout<<”|
cout<<“|
0.退出系统
cout<<”|
1.查找记录
cout<<“|
2.增加记录
cout<<”|
3.删除记录
cout<<“|
4.输出所有记录
cout<<”|
5.输出所有收入记录
cout<<“|
6.输出所有支出记录
cout<<”|
7.修改密码
cout<<“|
8.初始化记录
cout<<”|
9.回收站
char choice;cin>>choice;switch(choice){case'0':cout<<“感谢您使用本系统!n”;exit(0);case'1':X.inquire(file);break;case'2':X.increase(file);break;case'3':X.del(file);break;case'4':X.printall(file);break;case'5':X.printincome(file);break;
|n“;|n”;
|n“;|n”;|n“;|n”;|n“;|n”;|n“;|n”;|n“;|n”;case'6':X.printpay(file);break;case'7':X.Modifynumber();break;case'8':X.Initial(file);break;case'9':X.recyclebin(file);break;} cout< //check-acnumber.cpp #include“mynumber.h” int account::checkacnumber(){stringa;int j=3;ifstreamfdat(“E:accountFile.dat”,ios::in);cout<<“请输入您的账号: ”;while(j--){cin>>a;fdat.seekg(0,ios::beg);fdat.read((char*)&B,sizeof(code));if(a==B.acnumber){fdat.close();return 1;} else cout<<“此账号不存在,请重新输入!n”;} cout<<“n您的账号已输错三次!请退出系统!n”;fdat.close();return 0;} //check-password.cpp #include“mynumber.h” int account::checkpassword(){ifstreamfdat(“E:accountFile.dat”,ios::in);strings;int j=3,x;cout<<“请输入密码:”;while(j--){cin>>s;fdat.seekg(0,ios::beg);fdat.read((char*)&B,sizeof(code));if(s==B.password){fdat.close();return 1;} else cout<<“密码错误,请重新输入!n”;} cout<<“n您输入的密码已错误三次,请问想找回密码吗?(Y/N)n”;char answer;cin>>answer;if(answer=='Y'||answer=='y'){x=account::findback();if(x==1)return 1;else return 0;} else {cout<<“感谢您使用本系统,再见!n”;return 0;} } //CreateDat.cpp #include“mynumber.h” void account::CreateDat(){codeB;stringa,b;account::oldrecord(“E:RecordFile.txt”);fstream temp(“E:lalala.txt”,ios::out|ios::binary);fstream rub(“E:RecycleBin.txt”,ios::out|ios::binary);temp.seekp(0,ios::beg);temp.write((char*)&mark,sizeof(record));rub.seekp(0,ios::beg);rub.write((char*)&mark,sizeof(record));while(1){cout<<“请输入您要注册的账号:”;cin>>B.acnumber;cout< { cout<<“为了便于验证身份,请您填写以下信息作为验证方式n”;cout<<“自己身高多少:”;cin>>B.person1;cout<<“自己颜值多高:”;cin>>B.person2;cout<<“(自己身高多少:”< ”<<“(自己颜值多高:”< {stringE;int n=0;char answer;cout<<“请输入您要删除的日期:”;cin>>E;fdat.seekg(0,ios::beg);do {fdat.read((char*)&A,sizeof(record));if(E==A.time){n++;cout<<“(”< { cout<<“没有该日期的记录!n”<<“您还要继续删除记录吗?(Y/N)n”;cin>>answer;if(answer=='Y'||answer=='y'){cout< {rub.read((char*)&A,sizeof(record)); }while(!endmark(A)); rub.seekp(-long(sizeof(record)),ios::cur);do {fdat.read((char*)&A,sizeof(record)); if(A.time!=E&&!endmark(A)){ftxt.write((char*)&A,sizeof(record));} if(A.time==E&&!endmark(A)){rub.write((char*)&A,sizeof(record));} }while(!endmark(A));ftxt.write((char*)&mark,sizeof(record));rub.write((char*)&mark,sizeof(record));fdat.seekp(0,ios::beg);ftxt.seekg(0,ios::beg);do {ftxt.read((char*)&A,sizeof(record)); if(!endmark(A)) fdat.write((char*)&A,sizeof(record)); }while(!endmark(A)); fdat.write((char*)&mark,sizeof(record));cout<<“成功删除记录!n”;cout<<“您是否还要继续删除日期记录?(Y/N)n”;cin>>answer;if(answer=='Y'||answer=='y'){cout< //findback.cpp #include“mynumber.h” int account::findback(){fstreamfdat(“E:accountFile.dat”,ios::in|ios::out|ios::binary);fdat.seekg(0,ios::beg);fdat.read((char*)&B,sizeof(code));stringa,b,c,d;cout<<“自己身高多少:”;cin>>a;if(a!=B.person1){cout<<“n验证错误!请退出系统!n”;return 0;} else {cout<<“自己颜值多高:”;cin>>b;if(b!=B.person2){cout<<“n验证错误!请退出系统!n”;return 0;} else {cout<<“n验证成功!请修改您的密码!n”;account::Modifynumber();fdat.close();return 1;} } } //increase.cpp #include“mynumber.h” void account::increase(const char* filetxt){ fstreamfdat(filetxt,ios::in|ios::out|ios::binary);while(1){ record D; cout<<“请输入您要添加的日期:”; cin>>D.time; cout<<“请输入所添加日期的操作:”; cin>>D.operate; cout<<“请输入所添加日期的支出或收入:”; cin>>D.money; cout.setf(ios::showpos); cout<<“(”< cout<<“n是否确定将该日期记录进行保存?(Y/N)n”;char answer;cin>>answer;if(answer=='Y'||answer=='y'){fdat.seekg(0,ios::beg); do {fdat.read((char*)&A,sizeof(record)); }while(!endmark(A)); fdat.seekp(-long(sizeof(record)),ios::cur); fdat.write((char*)&D,sizeof(record)); fdat.write((char*)&mark,sizeof(record)); cout<<“n您是否还要继续添加日期记录?(Y/N)n”; cin>>answer; if(answer=='Y'||answer=='y'){cout< else {cout<<“记录保存成功!n”;fdat.close();break;} }else {cout<<“取消操作!n”;cout<<“您还要进行日期记录添加的操作吗?(Y/N)n”;cin>>answer;if(answer=='Y'||answer=='y')continue;else {fdat.close();break;} } } } //Initial.cpp #include“mynumber.h” externconst record mark;void account::Initial(const char *filetxt){fstreamfdat(filetxt,ios::out|ios::binary);cout<<“若账目文件存在,将删除所有数据,要进行文件初始化吗?(Y/N)n”;char answer;cin>>answer;if(answer=='Y'||answer=='y'){fdat.seekp(0,ios::beg);fdat.write((char*)&mark,sizeof(record));cout<<“文件已经初始化。n”;} else cout<<“取消操作n”;fdat.close();} //inquire.cpp #include“mynumber.h” void account::inquire(const char* filetxt){cout<<“请输入您要查询的日期:”;string date;int sum=0,income=0,pay=0,n=0;cin>>date;fstreamftxt(filetxt,ios::in|ios::binary);ftxt.seekg(0,ios::beg);do {ftxt.read((char*)&A,sizeof(record));if(date==A.time&&!endmark(A)){n++;if(n==1)cout<<“Time operate moneyn”;cout< ”< ”< //oldrecord.cpp #include“mynumber.h” externconst record mark;void account::oldrecord(const char *filetxt){record a[20];record A;a[0].time=“15-03-20”;a[0].operate=“in”;a[0].money=+10;a[1].time=“14-05-20”;a[1].operate=“out”;a[1].money=-20;a[2].time=“14-06-21”;a[2].operate=“out”; a[2].money=-35;a[3].time=“14-05-21”;a[3].operate=“out”;a[3].money=-40;a[4].time=“15-05-22”;a[4].operate=“in”;a[4].money=+100;a[5].time=“15-05-25”;a[5].operate=“out”;a[5].money=-25;a[6].time=“15-05-26”;a[6].operate=“out”;a[6].money=-15;a[7].time=“14-11-26”;a[7].operate=“out”;a[7].money=-70;a[8].time=“15-03-26”;a[8].operate=“in”;a[8].money=+100;a[9].time=“15-02-27”;a[9].operate=“out”;a[9].money=-40;a[10].time=“15-05-28”;a[10].operate=“in”;a[10].money=+100;a[11].time=“15-05-28”;a[11].operate=“out”;a[11].money=-20;a[12].time=“15-04-28”;a[12].operate=“out”;a[12].money=-10;a[13].time=“15-05-29”;a[13].operate=“in”;a[13].money=+88;a[14].time=“15-05-30”;a[14].operate=“out”;a[14].money=-61;a[15].time=“15-06-01”;a[15].operate=“out”;a[15].money=-18;a[16].time=“15-06-04”;a[16].operate=“out”;a[16].money=-23;a[17].time=“15-06-05”;a[17].operate=“in”;a[17].money=+11;a[18].time=“15-06-03”;a[18].operate=“out”;a[18].money=-52;a[19].time=“15-06-08”;a[19].operate=“in”;a[19].money=+50;fstream file(filetxt,ios::out|ios::binary);file.seekp(0,ios::beg);for(inti=0;i<20;i++){file.write((char*)&a[i],sizeof(record));} file.write((char*)&mark,sizeof(record));file.close();} //PrintAll.cpp #include“mynumber.h” void account::printall(const char* filetxt){ int sum=0,income=0,pay=0,i=0,t;record q[100];strings,x;fstreamftxt(filetxt,ios::in|ios::binary);ftxt.seekg(0,ios::beg);do { ftxt.read((char*)&A,sizeof(record));if(!endmark(A)){q[i].time=A.time;q[i].operate=A.operate;q[i].money=A.money;i++;if(A.operate==“in”){sum=sum+A.money;income=income+A.money;} else {sum=sum+A.money;pay=pay+A.money;}} }while(!endmark(A));if(i>1) {for(int k=0;k {s=q[j].time;q[j].time=q[k].time;q[k].time=s; x=q[j].operate;q[j].operate=q[k].operate;q[k].operate=x; t=q[j].money;q[j].money=q[k].money;q[k].money=t;} } cout<<“Time operate moneyn”;for(int k=0;k ”< ”< ”< ”< moneyn“;cout< “< “< {s=q[j].time;q[j].time=q[k].time;q[k].time=s; x=q[j].operate;q[j].operate=q[k].operate;q[k].operate=x; t=q[j].money;q[j].money=q[k].money;q[k].money=t;} } cout<<”Time operate moneyn“;cout.setf(ios::showpos);for(int k=0;k “< “< operate moneyn“;cout< “< “< //printpay.cpp #include”mynumber.h“ void account::printpay(const char* filetxt){ int sum=0,n=0,i=0,t;record q[100];string s,x;fstreamftxt(filetxt,ios::in|ios::binary);ftxt.seekg(0,ios::beg);do { ftxt.read((char*)&A,sizeof(record));if(!endmark(A)&&A.operate==”out“){n++;q[i].time=A.time;q[i].operate=A.operate;q[i].money=A.money;i++;sum=sum+A.money;} }while(!endmark(A));if(i>1){for(int k=0;k {s=q[j].time;q[j].time=q[k].time;q[k].time=s; x=q[j].operate;q[j].operate=q[k].operate;q[k].operate=x; t=q[j].money;q[j].money=q[k].money;q[k].money=t;} } cout<<”Time operate moneyn“;for(int k=0;k “< “< operate moneyn“;if(q[0].money)cout< “< “< //RecycleBin.cpp #include”mynumber.h“ void account::recyclebin(const char* filetxt){fstream rub(”E:RecycleBin.txt“,ios::in|ios::out|ios::binary);fstreamfdat(filetxt,ios::in|ios::out|ios::binary);fstreamftxt(”E:lalala.txt“,ios::in|ios::out|ios::binary);string s;cout<<”n 请选择您要进行的操作n“;cout<<”|-----------------------------|n“;cout<<”|------1.找回误删日期记录-----|n“;cout<<”|------2.清空回收站-----------|n“;cout<<”|------3.取消操作-------------|n“;cout<<”|-----------------------------|n“;string x;cin>>x;if(x==”1“){rub.seekg(0,ios::beg);rub.read((char*)&A,sizeof(record));if(endmark(A)){cout<<”您还未删除过日期或者回收站已经清空!n“;} else while(1){int n=0;cout<<”n回收站的日期记录如下:n“;account::printall(”E:RecycleBin.txt“);cout<<”请输入您要回收的日期:“;cin>>s;rub.seekg(0,ios::beg);do {rub.read((char*)&A,sizeof(record));if(s==A.time&&!endmark(A)){n++;break;} }while(!endmark(A));if(n==0) {cout<<”n回收站无该日期记录!n“;cout<<”您确定要找回误删的日期记录吗?(Y/N)n“;char answer;cin>>answer;if(answer=='Y'||answer=='y')continue;else {cout<<”已取消操作n“;break;}} else {fdat.seekg(0,ios::beg);do {fdat.read((char*)&A,sizeof(record));}while(!endmark(A));fdat.seekp(-long(sizeof(record)),ios::cur);rub.seekg(0,ios::beg);do {rub.read((char*)&A,sizeof(record));;if(s==A.time&&!endmark(A)){fdat.write((char*)&A,sizeof(record));} }while(!endmark(A));rub.seekg(0,ios::beg);ftxt.seekp(0,ios::beg);do {rub.read((char*)&A,sizeof(record));if(A.time!=s&&!endmark(A)){ftxt.write((char*)&A,sizeof(record));} }while(!endmark(A));ftxt.write((char*)&mark,sizeof(record));rub.seekp(0,ios::beg);ftxt.seekg(0,ios::beg);do {ftxt.read((char*)&A,sizeof(record));if(!endmark(A))rub.write((char*)&A,sizeof(record));}while(!endmark(A));rub.write((char*)&mark,sizeof(record));rub.close();fdat.close();ftxt.close();cout<<”回收成功!n“;break;} } } else if(x==”2“){char answer;cin>>answer;cout<<”您确定要清空回收站?(Y/N)n“;if(answer=='Y'||answer=='y'){rub.clear();rub.seekp(0,ios::beg);rub.write((char*)&mark,sizeof(record));rub.close();cout<<”回收站清空成功!n“;} else cout<<”已取消操作n“;} else if(x==”2“)cout<<”取消操作成功!n“;else cout<<”没有此选项!n“;} //endmark.cpp #include”mynumber.h" int account::endmark(record A){if(A.money==0)return 1;return 0;} 完善财务管理系统,以适应不断变化的财务管理环境 财务管理的宏观环境虽然客观存在于企业之外,企业无法对其施加影响或加以控制,但并不意味着企业面对环境变化就无能为力。首先,企业应对不断变化的财务管理宏观环境认真分析,把握其变化趋势及规律,并制定多种应变措施,适时调整财务管理政策,改变财务管理方法,从而提高企业对财务管理环境变化的适应能力和应变能力,以此降低和规避因环境变化给企业带来的财务风险。其次,面对不断变化的财务管理环境,财务管理体系应与时俱进,不断更新、完善。企业应设置合理、高效的财务管理机构,配备高素质的财务管理人员,健全财务管理规章制度,强化财务管理的各项基础工作,使企业财务管理系统高效运行,以防范因财务管理系统不适应环境变化而产生的财务风险。 2.强化财务风险防范意识,树立正确的财务风险观念 在市场经济的激烈竞争中,树立风险意识,勇于承担并善于分散风险是现代企业成功的关键。因此,现代企业必须树立正确的财务风险观念,遵守风险收益均衡的原则,不能只顾收益而不考虑发生损失的可能性。企业各部门、各人员,特别是企业的决策管理部门和财务管理人员必须增强风险防范意识,将风险防范意识渗透于财务管理工作的各个环节。财务管理人员要掌握扎实的财会专业知识,具备财务信息的收集、整理和分析能力;要具有对财务风险的敏感的、准确的职业判断能力,及时、准确地估计和发现潜在的财务风险,并能对具体环境下的风险作出判断和提出解决方案。 3.提高财务决策的科学化水平 财务决策的正确与否直接关系到财务管理工作的成败,在决策过程中,应充分考虑影响决策的各种因素,采用定量计算及分析方法,并运用科学的决策模型进行决策。如在筹资决策中,企业应根据生产经营情况合理预测资金需要量,然后通过对资金成本的计算分析及各种筹资方式的风险分析,选择正确的筹资方式,确定合理的资金结构,并在此基础上做出正确的筹资决策,以降低筹资成本,减少财务风险。在投资决策中,企业要坚持以效益为中心的投资原则,统一使用资金,使资金投向配置更合理,既要避免过分分散又要避免过分集中。同时通过投资回收期、投资报酬率、净现值及内部报酬率等指标对投资项目进行综合分析评价,从而避免财务决策失误所带来的财务风险。 4.加强企业内部管理,理顺企业内部财务关系 加强企业内部管理,调整资金及资产结构,减少和降低不合理的资金占用,提高资金的使用效率和周转速度。要合理确定债务资金与自有资金、短期资金与长期资金的比例关系,并随着企业生产的变化而变化,始终处于一种动态的管理过程中。要加强应收账款的风险防范与控制,建立一套科学、系统的应收账款体系,注重评估客户的财务状况和资信状况,谨慎签订合同,定期分析账龄,紧密跟踪应收账款的还款情况,合理制定收款政策,控制风险,减少坏账损失。对于存货,在保证生产和销售顺利进行的同时使存货总成本达到最低水平。在实际工作中,可以调查、总结已有的经验,运用存货管理中的最佳订货批量模型来确定存货量,以减少损失。同时,要理顺企业内部财务关系,做到责、权、利相统一,明确各部门在企业财务管理中的地位、作用及应承担的职责,并赋予相应的权力,真正做到权责分明,各负其责,使企业内部各种财务关系清晰明了,减少企业因管理不善而造成的财务风险。 5.合理利用防范风险的技术方法 现代企业可以利用多种方法来防范和规避财务风险,具体包括:(1)分散法。即通过企业之间联营、多种经营及对外投资多元化等方式分散财务风险。对于风险较大的投资项目,企业可以与其它企业共同投资,以实现收益共享、风险共担,避免企业独家承担投资而产生的财务风险。在多种经营方式下,某些产品因滞销而产生的损失,会被其他产品带来的收益所抵消,从而可避免单一经营产生的无法实现预期收益的风险。(2)回避法。即企业在选择理财方式时,应综合评价各种方案可能产生的财务风险,在保证财务管理目标的前提下,选择风险较小的方案,以达到回避财务风险的目的。一般来讲,长期投资的风险大于短期投资风险,股权投资风险大于债权投资风险,所以,企业选择投资方式时,尽可能采用风险低的债权投资和短期投资。(3)转移法。企业在遵循合法、合理、公平、公正原则的基础上,可以采取措施转嫁风险。它包括保险转移和非保险转移。保险转移是指企业通过购买财务保险将财产损失的风险转移给保险公司承担;非保险转移是将某种特定风险转移给专门机构或部门。如对企业闲置的资产,采用出租或立即售出的处理方式,将资产损失的风险转移给承租方或购买方。(4)降低法。即企业面对客观存在的财务风险,努力采取措施降低财务风险的方法。如企业可在保证资金需要的前提下,适当降低负债资金占全部资金的比重。在生产经营活动中,可以通过提高产品质量、改进产品设计、开发新产品及开拓新市场等手段,降低因产品滞销、市场占有率下降而产生的不能实现预期收益的财务风险。另外,也可以按照稳健原则建立风险基金,以此降低风险损失对企业正常生产经营的影响。 6.建立有效的财务风险防范机制 企业应立足于市场,建立有效的风险防范和规避机制。首先,要建立完善的风险防范体系,健全财务风险管理机制,要抓好企业内控制度建设,明确企业财务风险监管职责,落实好分级负责制,建立经营者风险决策的激励与约束制度,以健全的奖惩体系为前提,鼓励经营者在公平竞争中进行经营管理活动并享受风险经营的收益,同时,要确保经营者能够担负起风险责任,承担风险损失。其次,企业要建立实时、全面、动态的财务预警系统,对企业在经营管理活动中的潜在风险进行实时监控。 宜宾市系统财务管理规定 一、为进一步严格财经纪律,规范和加强财务管理,提高财会人员的业务素质、政策水平和法制观念,保障各项资金统筹安排和有序使用,根据上级有关规定和本系统的实际情况,特制定本规定。 二、本规定适用于局机关、局属事业单位、工会及群团组织、系统行业协会。 三、财务管理必须遵循以下基本原则 (一)严格遵守国家有关法律、法规、财经纪律和现行财务制度; (二)增收节支、开源节流,提倡厉行节约,制止奢侈浪费。 (三)加强固定资产管理,防止国有资产流失; (四)保障资金安全、合理使用资金、提高资金用效益。 四、财务管理 (一)财务人员要正确认真登记各类账簿,真实反映本单位的经济活动情况,为提高单位经济效益,加强内部管理,提供准确的信息和依据,给领导当好参谋。不得伪造、变造、买卖、擅自销毁财务凭证。 (二)严格执行上级规定的各种资金开支渠道和开支标准,正确使用会计制度中规定的会计科目,不准任意扩大开支范围和提高开支标准,乱摊乱挤成本;各种开支要在规定的科目内支付,不得偷税漏税。 (三)单位的各种业务收入,必须按规定准确登记入账并归集到规定的科目内,不准出现隐瞒和虚增收入。 (四)必须建立健全财产清查制度。定期清查核对库存现金、银行存款、空白现金收支凭证、空白银行存款转帐凭证,及时清算债权、债务,保证帐证、帐表、帐帐、帐实相符。 (五)帐目要做到日清月结,建立会计档案立卷、归档、保管制度。 (六)单位财务报表、统计报表必须字迹清楚、数字准确,要按照规定时间报送。季报年报必须有财务分析。 (七)工会和行业协会的帐目纳入单位财务统一管理。 (八)单位财务收支情况每年应公布一至二次。 (九)不得违规发放津贴、补贴或变相提高福利待遇。 (十)未经批准,不得擅自为他人或提代担保。 五、预算外资金及专项资金管理 (一)严格执行收支两条线,加强预算外资金管理,不得滞留、截留、挪用应当上缴的财政收入。 (二)按照国家有关规定,安排预算外资金的使用。严格划清预算内资金和预算外资金的界限,不得将预算内资金以各种名目转移到预算外使用。 (三)不得截留、挤占、挪用专项资金,不得虚报、冒领专项经费。 (四)加强预算外资金及专项资金的内部审计和监督检查。 六、现金管理 (一)出纳会计必须执行《现金管理暂行条例》和支票管理制度。现金日记账必须日清月结,账款相符,并随时掌握银行存款数据,不得出现透支。单位的印章和支票应分开管理,非出纳人员不得管理现金和票据。 (二)因公购物、出差借用现金和支票,必须经主管领导批准,由财务部门审核后,方可借用。未经批准,任何人不得向外借用公款。 (三)现金收入要及时送存银行,不得坐支现金、公款私存、或以任何名义套取现金及违规转移现金,不得白条抵库和私设小金库。 (四)现金和支付必须按照现金管理的有关规定,严格执行有关报销的各种规章制度和开支标准,根据合法的现金支付凭证办理,凡不符合规定的不予办理。收入现金须向交款人开出加盖公章的符合财政部门规定的正式收据,并切实加强收据管理。 (五)出纳人员对现金要做到日清月结,账账、账证、账款相符。 (六)完善防盗设施,防止发生盗窃行为。 七、固定资产管理 (一)建立固定资产使用管理制度,明确专人负责。因工作需要由个人使用的,由使用人办理登记手续并负责保管。使用人岗位变动时,应及时上缴单位。相对固定专人使用的,特别是交通工具,在非搪行公务期间或执行公务时严重违章而造成的损失,一律由个人负责。单位固定资产(指房屋)出租、经营收入,必须纳入财务的正常管理,不得隐匿、私分。 (二)固定资产必须登记造册、建账设卡,做到账物相符。每年应组织一次清理盘点。如发生减损,要查明原因。属于过失造成的,应由当事人承担尽必要的经济责任。 (三)固定资产因超过使用年限,且各项技术指标不符合使用要求的,由单位清理造册,经有关部鉴定后,报财务部门审核,经单位主管领导审批后,方可办理报废手续。各种财产的变价收入须纳入账内核算。 八、财务人员管理 (一)建立健全内部会计监督制度。会计不得兼任出纳,会计、出纳等从事财务工作的人员应取得财政部门颁发的从业资格证。 (二)加强财务会员教育管理,依法履行职责,坚持原则,严防发生职务犯罪。 (三)会计人员调离工作岗位,要严格办理交接手续。单位财务负责人调离,主管单位应派人会同监交。 九、财务监督及内部审计 (一)局计划财务科要认真履行财务监督职责,做好预算和决算的审查监督工作,定期检查局属事业单位预算的执行情况,督促各单位认真执行《会计法》、《事业单位财务规则》等有关财务会计制度。对各单位存在的财务问题提出处理意见并监督执行。积极配合有关部门做好审计、财务检查工作。 (二)实行内部审计制度。局计划财务科要充分发挥内部审计监督职能,根据工作安排,对局属各单位的经济活动、财务收支、专项资金进行内部审计监督。对局属各单位主要负责人的变更进行离任经济责任审计。重要审计情况向局长办公会报告。 十、凡违反本规定的,按有关规定和程序追究责任人的责作,并给予党纪政纪处分。构成犯罪的移交司法机关依法查处。 十一、局属企业单位、企业化管理的事业单位执行相应的企业财务规则。 销售系统的财务管理 一、客户资料建立 1. 客户基本资料建文件: 业务人员应搜集所有经销商基本资料填立“客户基本资料表”,审核后归 档。 2. 客户动态资料记录:应注意及时更新。 3.财务应注意通过各种渠道掌握客户财务状况。 二、客户授信 1.目的:确保公司债权、货款的安全性,避免呆帐。 2.信用管理部门(专门机构或营销、财务组成临时小组)应就客户资料表进 行征信调查和信用额度、信用期限的评估; 3.信用管理应同时包含信用额度和信用期限两项内容,超出任一项,均视为 超信用。 4.凡提供信用必存在风险,必要时需客户提供抵押担保或订金。 5.营销部门应随时关注客户情况, 深入了解客户的业绩消长、存货状况、资 产变化、获利状况及经营者变动等运营情况及业界评价,如发觉客户呈现或有异常时,及时采取必要措施,以确保货款安全。 6.财务部门应每月提供有关客户销售、欠款、存货等变动报表,并对报表数 据进行深入分析,提供财务意见。 7.信用管理部门应每年/半年, 会同业务、财会等相关单位共同就现有客户的收款状况、信用额度及公司授信政策予以检讨、修订。 三、超信用处理 1.业务出货时,应开立“出货单”,转信用管理部门审查签章后才可转仓库 出货。若有超过信用额度情形者,应填制“超信用通知单”; 2.为达有效监控,一般由商务软件系统管理出货流程,超出核定额度或期限,系统自动不能出货。 3.超信用由权责人员授权,可依下列方式予以处理: A.增加信用额度:依据有关授信作业规定,申请增加客户信用再行出货。 B.超信用先行出货:必须有相当权限人员授权,作例外处理。 C.先办款再出货:客户先行支付(或多于)本次出货金额后再行出货。 D.暂缓出货:不能依上述情况处理者。 4.超信用的计算公式如下,二者之一者为超信用: A.超信用额度=核定之信用额度-应收票据-应收帐款-待出货额 B.有逾期欠款(即按帐期应收未收) 四、价格体系 1.统一价格体系:出厂价、二批供货价、经销商终端供货价、终端建议零售 价。 2.大型/全国性商超由公司统一掌控,价格可单独制定。 3.客户归口对位,严格执行四级价格,例外处理必须适当授权审批。 五、出货审核 1.业务销货须开立“出货单”,经财务核对数量、售价,收款条件及信用 管理部门信用审核,仓库才可出货。 2.据公司规定的客户级别和价格体系进行价格审核,若售价低于底限,必须有相当权限人员授权,作例外处理。 3.仓储人员办理发货时,应就下列规定予以审核: A.业务单位的经办人员、主管是否签章。 B.财务人员或信用管理人员是否签章。 六、往来帐管理 1.财务根据出货单开具发票,据以登帐或定期汇总登帐。 2.收到客户货款,及时填报“收款日报表”并据以进行应收帐款冲销处理。 3.分公司所有销货收到款项,一律存入“收款专户”,不得存入其它户头。 4.财务应定期出具“客户对帐函”,与客户进行函证对帐,确保应收款项的及时准确,避免呆坏帐发生。 5.针对将到期款项,以财务名义出具“结款通知单”,体现正规性和权威性。 6.针对到期未结款项,财务可出具措辞较强烈的“催款通知单”,以加强催 7.对逾期欠款所采取措施及跟踪反馈情况,填写“逾期欠款跟踪反馈单”,以加大责任、加强回收力度。财务注意资料的整理归档。 8.财务每周出具“客户欠款余额表”,到具体明细,着重突出逾期欠款部分; 应用商务软件系统,可即时生成该数据,是往来帐管理的有力工具。 9.财务每月末作“客户销售回款/欠款余额分析”,着重与销售对比的应收 帐款周转天数的分析比较。 10.财务每季度作“应收帐款帐龄分析”,密切关注逾期时间长的欠款,采取 各种可能措施加紧回收。确属呆坏帐应充分提列坏帐准备金。 11.善用银行承兑汇票和其他创新金融工具,以降低风险、加快回收。 七、销货退回、折让与折扣 1.销货退回时,业务部门必须填报“退库单”,经权责主管核准,由仓库点 数及质量签收后,转会计入帐。 2.销货折扣或折让时,业务部门必须填报“销售折扣/折让单”,经权责主管 核准,财务据以入帐。 3.有关税务规定:有销货退回或折让证明单的,可从当期的销项税额中扣减; 如果销售额和折扣额同在一张发票上分别注明的,可按折扣后的销售额征收增值税;如果将折扣额另开发票,不得从销售额中减除折扣额。 4.销售折扣财务处理: 4.1.开发票时确定折扣额,则应销售额和折扣额同在一张发票上分别注明:既可规避增值税又可实现销售收入/销售折扣财务反映的充分真实; 4.2.已开发票后确定折扣额,抵减下批销售价格:可规避增值税,但财务反映不真实。 八、返利返点的财务处理 1.视同折扣处理,在同一张发票上分别注明:既可规避增值税又可实现销售 收入/销售折扣财务反映的充分真实; 2.抵减下批销售价格:可规避增值税,但财务反映不真实; 3.原作销售退回,按新价格重开发票:相应税务手续麻烦,财务反映不真实; 4.经销商开营收发票,据以入帐:不能规避增值税且客户负担营业税,增加 5.经销商转广告费等实际费用发票:客户无营业税,但不能规避增值税,财 务只能被动入帐,反映不尽真实。 九、销售费管理 1.收支两条线原则:不得坐支销售款。 2.强调预算计划: 2.1.预算是销售费用管理的基础,把握总体、抓大放小是制订预算的原则; 2.2.既定的或行业公认的“费用/销售额目标”比是预算制定的总体指标,是控制市场投入的重要衡量标准。 2.3.注重成本效益原则,管控大项费用,降低监管成本。 3.严控预算外支出:必须经适当授权审批程序,方可支出预算外费用。 4.特殊费用单独审批:突发性或现金红包、礼金、娱乐等特殊费用要填列“特 殊费用申请表”,单独审批,堵塞漏洞。 5.注重费用效果分析:尽可能量化费用投入效果,分析费用增量与销售增量的比率,评估费用投入实质作用,避免不合理或低效开支。 6.按月提供“费用预算与实际开支表”,加强动态趋势分析和预算执行分析,加强监督作用。 十、财务分析 1.每月进行产品总体的收入、成本和毛利率分析; 2.每月按产品分析销售月度间的变动趋势及与计划完成情况; 3.切实关注并分析大经销商的实际销售及库存状况,着重“业绩”而非“提 货”; 4.定期(季度)进行库存结构分析,以及时采取有效措施加快周转,避免损 失; 5.每月进行客户销售回款分析; 6.定期(季度)进行应收帐款帐龄分析; 7.每月对销售费用增减变动及预算执行情况进行分析; 8.每月对市场推广等大项费用的开支明细进行比较分析; 9.建立费用投入效果评估体制,针对大项推广活动进行投入/产出的效果分 析。 十一、创新结算方式 1.网上银行:及时汇划、查询功能,适合集团总公司、分公司、经销商、供应商资金结算和管理。通过Internet,安全认证较严密,目前比较多的公司采用。 2.现代企业银行系统:适用企业集团,同城内局域网专线连接,可与企 业财务软件系统对接。 3.企业电子汇兑:抛掉手工汇款单,企业报送电子盘(加密),可直接与 银行电子联行系统连接。 4.国内信用证(中行):是开证行依照申请人的申请开出的,凭符合信用 条款的单据支付的付款承诺,适合商贸背景的国内企业间贸易结算使用。国内信用证的是由银行提供担保的国内企业之间商品交易的结算工具。 5.一路通贷款业务:由企业作担保/保证,由向各地经销商提供贷款。operate
1){for(int k=0;k
第三篇:完善财务管理系统
第四篇:宜宾市系统财务管理规定
第五篇:销售系统的财务管理