cvvt吧 关注:8贴子:96
  • 5回复贴,共1

      █ ●       ●  █

取消只看楼主收藏回复

0


1楼2006-07-21 02:33回复
    1


    3楼2006-07-26 14:51
    回复
      1


      4楼2006-07-30 13:53
      回复
        package bb;
        /**
         * 开発システム   株式売买管理システム.
         * ファイル概要   残高评価机能.
         * ファイル名     Proc_zndaka.java.
         * 使用言语       Java.
         * @auther        张燕
         * @version       1.0 2009.10.9
         *
         * 改定履歴
         * バージョン    修正日           修正者           内容
         *  1.0.0        2009/10/09       张燕             新规作成
         */
        import java.sql.*;
        import java.text.SimpleDateFormat;
        import bb.DbCn;
        public class Proc_zndaka {
        /**
         * クラス名:Proc_zndaka.java
         *
         * クラス概要:残高评価用
         *
         * 所属会社:株式会社バイトルヒクマ
         *
         * @author 张燕
         *
         * @see
         *
         * @version
         *
         */
        private static String KIJUNBI=null;//基准日
        private static String USER_ID=null;//利用者ID
        private static String KOUSHIN_JIKOKU=null;//システムの时刻
        private int ZANDAKA_NUM=0;//残高の件数
        private int HYOUKA_NUM=0;//评価件数
             /**
             *
             * メソッド名:returnKijunbi
             *
             * メソッド概要:基准日と利用者IDを取得する
             *
             * @param
             * @return
             * @throws
             *
             */
        private void returnKijunbi(){
        //システムの时刻を取得する
                SimpleDateFormat formatter = new SimpleDateFormat("yyyyMMdd");
                KIJUNBI = formatter.format(System.currentTimeMillis());
                formatter = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
                KOUSHIN_JIKOKU=formatter.format(System.currentTimeMillis());
                //利用者IDを取得する
                USER_ID="00001";
        }
             /**
             *
        


        7楼2009-10-19 01:44
        回复
               *
               */
          private float[] updateZandaka(String kokyaku_id,int kijun_ymd,String meigara_id,int unit_kabu,
          int tanka_boka,int kingaku_boka,String hshijo_id) throws SQLException{
          //时価と市场を取得する
          String[] rtData=jika(meigara_id);
          float jikatanka=Float.parseFloat(rtData[0]);
          //时価金额
          float jikakingaku=0;
          //评価损益
          float hyoukasoneki=0;
          String sql=null;
          if(jikatanka!=0){
          //时価単価存在するとき、时価金额と评価损益を时価単価から计算する
          jikakingaku=jikatanka*unit_kabu;
          hyoukasoneki=jikakingaku-kingaku_boka;
          //残高テーブルを更新する
          sql = "update zandaka_tbl"+
              " set tanka_jika='"+jikatanka+"',kingaku_jika="+jikakingaku+",hshijo_id='"+rtData[1]+"',"+
              "kingaku_hsoneki="+hyoukasoneki+",user_id='"+USER_ID+"',update_time='"+KOUSHIN_JIKOKU+"'"+
              " where kokyaku_id='"+kokyaku_id+"' and kijun_ymd='"+kijun_ymd+"' and meigara_id='"+meigara_id+"'";
          }
          else{
          //时価単価存在しないとき、时価金额と评価损益を残高簿価単価から计算する
          jikatanka=tanka_boka;
          jikakingaku=jikatanka*unit_kabu;
          hyoukasoneki=jikakingaku-kingaku_boka;
          //残高テーブルを更新する
          sql = "update zandaka_tbl"+
              " set tanka_jika='"+jikatanka+"',kingaku_jika="+jikakingaku+","+
              "kingaku_hsoneki="+hyoukasoneki+",user_id='"+USER_ID+"',update_time='"+KOUSHIN_JIKOKU+"'"+
              " where kokyaku_id='"+kokyaku_id+"' and kijun_ymd='"+kijun_ymd+"' and meigara_id='"+meigara_id+"'";
          }
          //データベースに関连する
          DbCn cnn=new DbCn();
          //SQL文を行う
              cnn.excuteUpdate(sql);
              //データベースをクロスする
              cnn.close();
              //时価金额と评価损益を戻る
              float[] rt=new float[2];
              rt[0]=jikakingaku;
              rt[1]=hyoukasoneki;
              return rt;
          }
          /**
               *
               * メソッド名:kanJou
               *
               * メソッド概要:勘定情报を追加する
          


          11楼2009-10-19 01:44
          回复
                 *
                 * @param kokyaku_id,meigara_id,kingaku
                 * @return
                 * @throws
                 *
                 */
            private void kanJou(String kokyaku_id,String meigara_id,float[] kingaku){
            float jikakingaku=kingaku[0];
            float hyoukasoneki=kingaku[1];
            //勘定情报(勘定额)を追加する
            String sql="insert into ac_tbl"+
            " values('"+KIJUNBI+"','"+kokyaku_id+"','"+meigara_id+"','9999999999','2','评価额',"+jikakingaku+",' ');";
            //勘定情报(勘定损益)を追加する
            if(hyoukasoneki<0){
            //评価损益
            sql+="insert into ac_tbl"+
            " values('"+KIJUNBI+"','"+kokyaku_id+"','"+meigara_id+"','9999999999','2','评価损益',"+hyoukasoneki+",' ')";
            }
            else {
            //评価损益
            sql+="insert into ac_tbl"+
            " values('"+KIJUNBI+"','"+kokyaku_id+"','"+meigara_id+"','9999999999','1','评価损益',"+hyoukasoneki+",' ')";
            }
            //データベースに関连する
            DbCn cnn=new DbCn();
            //SQL文を行う
                cnn.excuteUpdate(sql);
                //评価件数の计算
                HYOUKA_NUM+=2;
                //データベースをクロスする
                cnn.close();
            }
            /**
                 *
                 * メソッド名:insertLog
                 *
                 * メソッド概要:LOG情报を追加する
                 *
                 * @param flag
                 * @return
                 * @throws
                 *
                 */
            private void insertLog(int flag){
            String log=null;
            if(flag==1){
            //正常终了
             log="终了:正常终了、テーブル:残高履歴:"+ZANDAKA_NUM+"、テーブル:勘定履歴、更新件数:"+HYOUKA_NUM;
            }
            else if(flag==2){
            //异常终了
            log="终了:异常终了、エラーコード:EA0997";
            }
            else if(flag==3){
            //基准日取得失败
            log="基准日取得失败";
            }
            else if(flag==4){
            //评価処理済み
            log="评価処理済みエラー";
            }
            //ログ情报を追加する
            String sql="insert into log_tbl " +
            "values("+KIJUNBI+",'"+KOUSHIN_JIKOKU+"','"+USER_ID+
            "','proc_zandaka','','','"+log+"')";
            //データベースに関连する
            DbCn cnn=new DbCn();
            //SQL文を行う
            cnn.excuteUpdate(sql);
            //データベースをクロスする
            cnn.close();
            }
            /**
                 *
                 * メソッド名:main
                 *
                 * メソッド概要:プログラムの入り口
                 *
                 * @param args
                 * @return
                 * @throws
                 *
                 */
            public static void main(String[] args) {
            // TODO 自动生成されたメソッド・スタブ
            Proc_zndaka zandaka=new Proc_zndaka();
            try{
            zandaka.returnKijunbi();
            if(zandaka.init()==true){
            zandaka.zandakaHyouka();
            zandaka.insertLog(1);
            }
            else {
            zandaka.insertLog(2);
            }
               }
            catch(Exception e){
            e.printStackTrace();
            }
            }
            }


            12楼2009-10-19 01:44
            回复