• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    財務(wù)支票快速打印小程序

    2021-07-19 21:41:44吳吉哲
    電腦知識與技術(shù) 2021年15期
    關(guān)鍵詞:軟件財務(wù)

    吳吉哲

    摘要:日常財務(wù)辦公中經(jīng)常需要填寫支票,例如現(xiàn)金支票,轉(zhuǎn)賬支票。支票里的內(nèi)容大部分內(nèi)容重復,也容易出錯,未及時發(fā)現(xiàn)可能會造成不必要的損失。本文介紹了一款基于Java編程語言開發(fā)的"支票快速打印"軟件,不但可以快速轉(zhuǎn)換數(shù)字大小寫,形成準確的支票模板,并且可以連接使用打印機快速打印支票,有效減輕工作人員的工作量,提高準確率。

    關(guān)鍵詞:財務(wù);Java;軟件

    中圖分類號:TP311? ? ? 文獻標識碼:A

    文章編號:1009-3044(2021)15-0236-03

    1 引言

    支票(Cheque)是出票人簽發(fā)的,委托辦理支票存款業(yè)務(wù)的銀行或者其他金融機構(gòu)在見票時無條件支付確定的金額給收款人或者持票人的票據(jù)。在歷史上,資本家將巨額款項存入金錢買賣業(yè)的金銀佃工商人處,收款的金銀佃工商人向富商簽發(fā)收據(jù)。該收據(jù)為見票即付的無記名證券,富商憑收據(jù)向商人取款。后來,收款的金銀佃工商人在收到存款時,向存款人交付存折,內(nèi)附數(shù)張空白的提款憑證。存款人可以在提款憑證上做必要填寫,然后憑此向收受存款的商人請求支付?,F(xiàn)代支票就是從這種提款憑證發(fā)展而來。

    支票的出現(xiàn)使得人們可以對事先存儲在銀行的金錢進行支取,這樣不僅方便了交易,而且可以確保安全,促進了經(jīng)濟和商業(yè)的發(fā)展。而在現(xiàn)在的社會,支票更是隨處可見,大到金融企業(yè),小到老百姓,都會用到支票。在支票的填寫上,銀行考慮到安全性,同時也為了規(guī)范書寫,設(shè)定了很多填寫規(guī)范。但是這導致了在日常煩瑣的財務(wù)工作中增添了不必要的工作量。開發(fā)實現(xiàn)這一款程序,既節(jié)約了人力成本,也提高了工作效率和書寫支票準確率。

    2 技術(shù)選取

    本系統(tǒng)基于Java語言的桌面應(yīng)用,主要涉及Java的IO文件讀入存取技術(shù)、excel處理技術(shù)、swing界面技術(shù),同時運用Photoshop和AI軟件進行用戶界面圖片的設(shè)計。

    3 軟件相關(guān)設(shè)計

    3.1 系統(tǒng)思路設(shè)計

    首先,進入用戶界面,用戶輸入日期、收款單位、金額、密碼等基本信息,點擊“生成Excel”按鈕,軟件后臺會自動根據(jù)用戶選擇的支票類型選擇不同的支票模板參數(shù),生成excel表格,將用戶輸入的信息自動寫入,并彈出交由用戶確認,確認無誤后點擊“打印”按鈕,即可開始打印支票。

    3.2 代碼實現(xiàn)

    本系統(tǒng)需要實現(xiàn)的代碼包括六個類。

    1)Frame.java

    此類主要生成一個用戶界面的對象,用戶可以在此界面輸入日期、收款單位、金額、密碼等基本信息,并且操作生成表格或者進行打印。

    public class Frame extends JFrame{

    JPanel panel1 = new JPanel();

    JPanel panel2 = new JPanel();

    JTextField copname = new JTextField("", 25);

    JButton bt = new JButton("生成EXCEL");

    JTextField data = new JTextField("開票日期:", 25);

    JTextField datablank = new JTextField("", 25);

    JTextField datatip = new JTextField("格式:20170901", 25);

    JTextField amount = new JTextField("開票金額:", 25);

    JTextField amountblank = new JTextField("", 25);

    JTextField amounttip = new JTextField("格式:10000.00", 25);

    JTextField use = new JTextField("用途:", 25);

    JTextField useblank = new JTextField("", 25);

    JTextField password = new JTextField("密碼:", 25);

    JTextField passwordblank = new JTextField("", 25);

    JTextField cop = new JTextField("收款單位:", 25);

    public Frame() {

    JFrame frame = new JFrame();

    frame.setSize(800, 500);

    panel2.setSize(500, 400);

    frame.setTitle("支票打印小");

    (省略控件設(shè)置代碼)

    為界面內(nèi)的按鈕設(shè)置監(jiān)聽事件,點擊進入監(jiān)聽事件。

    bt.addActionListener(new ActionListener() {

    public void actionPerformed(ActionEvent e) {

    NewReceiver(copname.getText().toString(),datablank.getText().toString(),passwordblank.getText().toString(), useblank.getText().toString(), amountblank.getText().toString());}});}}

    2)ImageComponent.java

    此類主要生成界面美化對象,便于后臺調(diào)用。

    public class ImageComponent extends JComponent{

    private static final int DEFAULT_WIDTH = 330;

    private static final int DEFAULT_HEIGHT= 500;

    private Image image;

    public ImageComponent(){image = new ImageIcon("log.jpg").getImage();}

    public void paintComponent(Graphics g){

    if(image == null) return;

    int imageWidth = image.getWidth(this);

    int imageHeight = image.getHeight(this);

    g.drawImage(image,0,0,null);

    for(int i=0;i*imageWidth<=getWidth();i++){

    for(int j=0;j*imageHeight<=getHeight();j++){

    if(i+j>0){g.copyArea(0, 0, imageWidth, imageHeight, i*imageWidth, j*imageHeight);}}

    }

    publicDimension getPreferredSize(){return new Dimension(DEFAULT_WIDTH,DEFAULT_HEIGHT);

    }}

    3)Reciver.java

    功能實現(xiàn)的主類。根據(jù)用戶輸入的時間、金額,自動還換算為大寫的數(shù)據(jù),并且將所有數(shù)據(jù)整合,生成可以打印的支票固定格式的excel表格。

    public class Receiver {

    public Receiver(String copname,String data,String password,String use,String amount) {(省略構(gòu)造方法參數(shù))}

    private void changetoBig(String data, String amount) {

    final String UNIT = "萬千佰拾億仟佰拾萬仟佰拾元角分";

    final String DIGIT = "零壹貳叁肆伍陸柒捌玖";

    final double MAX_VALUE = 9999999999999.99D;

    int year = Integer.parseInt(data.substring(0, 4));

    int month =Integer.parseInt(data.substring(4, 6));

    int day = Integer.parseInt(data.substring(6, 8));

    String[]Daxie = {"零","壹","貳","叁","肆","伍","陸","柒","捌","玖","拾"};

    String BigYear;

    String BigMonth;

    String BigDay;

    String SmallData = year+"年"+month+"月"+day+"日";

    excel.test(8, 2, String.valueOf(year));

    excel.test(8, 3, String.valueOf(month));

    excel.test(8, 4, String.valueOf(day));

    int y1 = year/1000;

    inty2 = year%1000/100;

    int y3 = year%100/10;

    int y4 = year%100%10;

    BigYear = Daxie[y1]+Daxie[y2]+Daxie[y3]+Daxie[y4];

    excel.test(2, 10, BigYear);

    int m1 = month/10;

    int m2 = month%10;

    if(m1==0){BigMonth = Daxie[0]+Daxie[m2];

    }else if(m2==0){BigMonth = Daxie[m1]+Daxie[10];

    }else{BigMonth = Daxie[m1]+Daxie[10]+Daxie[m2];

    }excel.test(2, 12, BigMonth);

    int d1 = day/10;

    int d2 = day%10;

    if(d1==0){BigDay = Daxie[0]+Daxie[d2];

    }else if(d2==0){BigDay = Daxie[d1]+Daxie[10];

    }else{BigDay = Daxie[d1]+Daxie[10]+ Daxie[d2];

    }excel.test(2, 13, BigDay);

    double v = Double.parseDouble(amount);

    if (v < 0 || v > MAX_VALUE) {System.out.println("參數(shù)非法!");}

    long l = Math.round(v * 100);

    xiaoxie(l,v);

    if (l == 0) {System.out.println("零元整");}

    String strValue = l + "";

    int i = 0;

    int j = UNIT.length() - strValue.length();

    String rs = "";

    boolean isZero = false;

    for (; i < strValue.length(); i++, j++) {

    char ch = strValue.charAt(i);

    if (ch == '0') {isZero = true;

    if (UNIT.charAt(j) == '億' || UNIT.charAt(j) == '萬'|| UNIT.charAt(j) == '元') {

    rs = rs + UNIT.charAt(j);

    isZero = false;}} else {

    if (isZero) {rs = rs + "零";isZero = false;}

    rs = rs + DIGIT.charAt(ch - '0') + UNIT.charAt(j);}}

    rs = rs.replaceAll("億萬", "億");

    rs += "整";

    excel.test(5, 9, rs);

    System.out.println(rs);

    try {ToPrint();} catch (IOException e) {e.printStackTrace();}}

    (省略其他執(zhí)行方法)

    4)ToExcel.java

    此類為實現(xiàn)寫入Excel的功能類。

    ppublic class ToExcel {

    public void test(int x, int y, String value) {

    try {

    HSSFWorkbook wb = new HSSFWorkbook(new FileInputStream(filePath));

    HSSFSheet sheet = wb.getSheetAt(0);

    HSSFRow row = sheet.getRow(x);

    HSSFCell cell = row.createCell(y);

    HSSFFont f = wb.createFont();

    f.setFontName("宋體");

    HSSFCellStyle style = wb.createCellStyle();

    (省略固定支票格式代碼)

    style.setFont(f);

    cell.setCellStyle(style);

    cell.setCellValue(value);

    FileOutputStream os;

    os = new FileOutputStream(filePath);

    wb.write(os);

    os.close();

    } catch (Exception e) {e.printStackTrace();}}

    在操作軟件時,生成的對象如果不用java虛擬機回收,會一直存在,可能會影響軟件后續(xù)使用,建議在該類里加一個清理數(shù)據(jù)的方法public void clear()。

    4結(jié)語

    本軟件使用java編程語言,獨立開發(fā),實現(xiàn)了快速打印支票的功能,體現(xiàn)了java的結(jié)構(gòu)簡單、獨立性好等特點,可有效減少財務(wù)人員的工作量,提高工作效率,具有一定的推廣前景。

    參考文獻:

    [1] 王昊欣,姜學東.JAVA編程語言在計算機軟件開發(fā)中的應(yīng)用[J].電子測試,2017(13):73-74.

    [2] 秦鵬珍.基于Java的拼圖游戲?qū)崿F(xiàn)[J].電子技術(shù)與軟件工程,2019(13):237-238.

    [3] 姜雪垠.網(wǎng)上答題系統(tǒng)的設(shè)計與實現(xiàn)[J].中國管理信息化,2017,20(20):153-154.

    【通聯(lián)編輯:唐一東】

    猜你喜歡
    軟件財務(wù)
    禪宗軟件
    英語文摘(2021年10期)2021-11-22 08:02:26
    黨建與財務(wù)工作深融合雙提升的思考
    論事業(yè)單位財務(wù)內(nèi)部控制的實現(xiàn)
    欲望不控制,財務(wù)不自由
    軟件對對碰
    水利財務(wù)
    談軟件的破解與保護
    精品(2015年9期)2015-01-23 01:36:01
    豐富多彩的Android軟件
    宁阳县| 仙游县| 韶关市| 威海市| 贺兰县| 安康市| 西乡县| 凉城县| 洞头县| 民勤县| 武乡县| 汶上县| 克东县| 灌云县| 延寿县| 菏泽市| 平江县| 海林市| 天长市| 象山县| 涞水县| 图木舒克市| 阿瓦提县| 富宁县| 贡觉县| 罗平县| 瑞丽市| 安平县| 四子王旗| 巴林左旗| 新民市| 肃宁县| 论坛| 微山县| 柏乡县| 雅江县| 绥芬河市| 新沂市| 呈贡县| 朔州市| 西乡县|