⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 vericlient.java

📁 SAP ERP的二次开发
💻 JAVA
📖 第 1 页 / 共 4 页
字号:
         *  Run the tests         */        public void run()        {            testSimpleConnection();            testPooledConnection();        }    }    /**     *  Test the data containers     */    public static class TestContainers extends Test {        private static JCO.MetaData tmeta;        private static JCO.MetaData smeta;        private static String[] data  = {"Chars","12","34","56","7890","123.45", "678.90", "2000-10-20", "10:11:12",                                        "0123456789ABCDEF", "String", "01234567890ABCDEF"};        private static String[] check = {"Chars","12","34","56","007890","123.45", "678.9", "2000-10-20", "10:11:12",                                        "0123456789ABCDEF00000000000000", "String", "01234567890ABCDEF0", "TEST", "TEST"};        /**         *  Check field value of a record         */        private void checkFields(JCO.Record rec) throws Exception        {            if (rec instanceof JCO.Table && ((JCO.Table)rec).getNumRows() == 0) return;            //------------------------------------------------------------            // Loop over all fields            //------------------------------------------------------------            int i;            for (i = 0; i < rec.getFieldCount(); i++) {                if (rec.getType(i) == JCO.TYPE_STRUCTURE) {                    JCO.Structure s = rec.getStructure(i);                    checkFields(s);                }                else if (rec.getType(i) == JCO.TYPE_TABLE) {                    JCO.Table t = rec.getTable(i);                    if (t.getNumRows() > 0) {                        t.firstRow();                        do {                            checkFields(t);                        }                        while (t.nextRow());                        t.firstRow();                    }//for                }                else if (rec.isInitialized(i)) {                    String value = rec.getString(i);                    if (!check[i].equals(value)) {                        printStatus(new Exception(rec.getName(i) + ": " + value + " != " + check[i]));                    }//if                }//if            }//for            //------------------------------------------------------------            // Same as above but now with enumerator            //------------------------------------------------------------            i = 0;            for (JCO.FieldIterator e = rec.fields(); e.hasMoreElements();) {                JCO.Field f = e.nextField();                if (f.getType() == JCO.TYPE_STRUCTURE) {                    JCO.Structure s = f.getStructure();                    checkFields(s);                }                else if (f.getType() == JCO.TYPE_TABLE) {                    JCO.Table t = f.getTable();                    if (t.getNumRows() > 0) {                        t.firstRow();                        do {                            checkFields(t);                        }                        while (t.nextRow());                        t.firstRow();                    }//for                }                else if (f.isInitialized()) {                    String value = f.getString();                    if (!check[i].equals(value)) {                        printStatus(new Exception(rec.getName(i) + ": " + value + " != " + check[i]));                    }//if                }//if                i++;            }//for        }        private void testMetaData()        {            try {                printMethod("new JCO.MetaData()");                smeta = new JCO.MetaData("TEST");                printStatus(null);                printMethod("meta.addInfo()");                smeta.addInfo("FIELD_CHAR",     JCO.TYPE_CHAR,    32, -1, 0);                smeta.addInfo("FIELD_INT" ,     JCO.TYPE_INT,      4, -1, 0);                smeta.addInfo("FIELD_INT2",     JCO.TYPE_INT2,     2, -1, 0);                smeta.addInfo("FIELD_INT1",     JCO.TYPE_INT1,     1, -1, 0);                smeta.addInfo("FIELD_NUM",      JCO.TYPE_NUM,      6, -1, 0);                smeta.addInfo("FIELD_BCD",      JCO.TYPE_BCD,     10, -1, 2);                smeta.addInfo("FIELD_FLOAT",    JCO.TYPE_FLOAT,   10, -1, 2);                smeta.addInfo("FIELD_DATE",     JCO.TYPE_DATE,    10, -1, 0);                smeta.addInfo("FIELD_TIME",     JCO.TYPE_TIME,    10, -1, 0);                smeta.addInfo("FIELD_BYTE",     JCO.TYPE_BYTE,    15, -1, 0);                smeta.addInfo("FIELD_STRING",   JCO.TYPE_STRING,  32, -1, 0);                smeta.addInfo("FIELD_XSTRING",  JCO.TYPE_XSTRING, 15, -1, 0);                printStatus(null);                printMethod("meta.clone()");                tmeta = (JCO.MetaData)smeta.clone();                printStatus(null);                printMethod("meta.addInfo()");                tmeta.addInfo("FIELD_STRUCTURE",JCO.TYPE_STRUCTURE, 32, -1, 0, 0, smeta);                tmeta.addInfo("FIELD_TABLE",    JCO.TYPE_TABLE,     32, -1, 0, 0, smeta);                printStatus(null);            }            catch (Exception ex) {                printStatus(ex);            }//try        }        private void testParameterList()        {            if (smeta == null) testMetaData();            try {                printMethod("new JCO.ParameterList()");                JCO.ParameterList p = new JCO.ParameterList();                printStatus(null);                printMethod("param.addInfo()");                for (int i = 0; i < data.length; i++) {                     p.addInfo(smeta.getName(i),smeta.getType(i),smeta.getLength(i),-1,smeta.getDecimals(i));                }//for                printStatus(null);                printMethod("param.setValue(\"\")");                for (int i = 0; i < data.length; i++) {                     p.setValue("",smeta.getName(i));                }//for                printStatus(null);                printMethod("param.setValue(\"Text\")");                for (int i = 0; i < data.length; i++) {                     p.setValue(data[i],smeta.getName(i));                }//for                printStatus(null);                p = new JCO.ParameterList();                printMethod("param.appendValue()");                for (int i = 0; i < data.length; i++) {                     p.appendValue(smeta.getName(i),smeta.getType(i),smeta.getLength(i),smeta.getDecimals(i),data[i]);                }//for                printStatus(null);            }            catch (Exception ex) {                printStatus(ex);            }//try        }        private void testStructure()        {            if (smeta == null) testMetaData();            try {                printMethod("new JCO.Structure(meta)");                JCO.Structure s = new JCO.Structure(smeta);                printStatus(null);                printMethod("struc.setValue(\"\")");                for (int i = 0; i < data.length; i++) s.setValue("",s.getName(i));                printStatus(null);                printMethod("struc.setValue(\"Text\")");                for (int i = 0; i < data.length; i++) s.setValue(data[i],s.getName(i));                printStatus(null);                printMethod("struc.getString()");                checkFields(s);                printStatus(null);                printMethod("struc.clone()");                JCO.Structure s2 = (JCO.Structure)s.clone();                checkFields(s2);                printStatus(null);                if (JCO.getVersion().charAt(0) == '2') {                    printMethod("new JCO.Structure(structure)");                    s2 = new JCO.Structure(s);                    checkFields(s2);                    printStatus(null);                }//if            }            catch (Exception ex) {                printStatus(ex);            }//try        }        private void testTable()        {            int NUM_ROWS = 3;            if (tmeta == null) testMetaData();            try {                printMethod("new JCO.Table(meta)");                JCO.Table t = new JCO.Table(tmeta);                printStatus(null);                printMethod("table.appendRow()");                for (int j = 0; j < NUM_ROWS; j++) {                    t.appendRow();                    for (int i = 0; i < data.length; i++) t.setValue(data[i],t.getName(i));                    JCO.Structure s2 = t.getStructure(data.length);                    for (int i = 0; i < data.length; i++) s2.setValue(data[i],s2.getName(i));                    JCO.Table t2 = t.getTable(data.length+1);                    t2.appendRows(NUM_ROWS);                    for (int j2 = 0; j2 < NUM_ROWS; j2++) {                        for (int i = 0; i < data.length; i++) t2.setValue(data[i],t2.getName(i));                        t2.nextRow();                    }//for                    t2.firstRow();                }//for                printStatus(null);                printMethod("new JCO.Table(table.getMetaData())");                JCO.Table tc = new JCO.Table(t.getMetaData());                for (int j = 0; j < 1; j++) {                    tc.appendRow();                    for (int i = 0; i < data.length; i++) tc.setValue(data[i],t.getName(i));                    JCO.Structure s2 = tc.getStructure(data.length);                    for (int i = 0; i < data.length; i++) s2.setValue(data[i],s2.getName(i));                    JCO.Table t2 = tc.getTable(data.length+1);                    t2.appendRows(NUM_ROWS);                    for (int j2 = 0; j2 < NUM_ROWS; j2++) {                        for (int i = 0; i < data.length; i++) t2.setValue(data[i],t2.getName(i));                        t2.nextRow();                    }//for                    t2.firstRow();                }//for                //checkFields(tc);                printStatus(null);                printMethod("table.clone()");                tc = (JCO.Table)t.clone();                checkFields(tc);                printStatus(null);                if (JCO.getVersion().charAt(0) == '2') {                    printMethod("new JCO.Table(table)");                    tc = (JCO.Table)new JCO.Table(t);                    checkFields(tc);                    printStatus(null);                }//if                printMethod("table.insertRow()");                for (int j = 0; j < NUM_ROWS; j++) {                    t.insertRow(0);                    for (int i = 0; i < data.length; i++) t.setValue(data[i],t.getName(i));                    JCO.Structure s2 = t.getStructure(data.length);                    for (int i = 0; i < data.length; i++) s2.setValue(data[i],s2.getName(i));                    JCO.Table t2 = t.getTable(data.length+1);                    t2.appendRows(NUM_ROWS);                    for (int j2 = 0; j2 < NUM_ROWS; j2++) {                        for (int i = 0; i < data.length; i++) t2.setValue(data[i],t2.getName(i));                        t2.nextRow();                    }//for                    t2.firstRow();                }//for                printStatus(null);                printMethod("table.deleteRow() " + t.getNumRows());                t.setRow(t.getNumRows()-2);                t.deleteRow(t.getNumRows()-1);                t.deleteRow(2);                t.deleteRow(0);                if (t.getRow() != (NUM_ROWS-1))                    printStatus(new Exception("getRow() != " + (NUM_ROWS-1) + ", but " + t.getRow()));                else                    printStatus(null);                printMethod("table.getNumColumns()");                if (t.getNumColumns() != tmeta.getFieldCount())                    printStatus(new Exception("No. of columns != " + tmeta.getFieldCount()));                else                    printStatus(null);                printMethod("table.getNumRows()");                if (t.getNumRows() != NUM_ROWS)                    printStatus(new Exception("No. of rows != " + NUM_ROWS));                else                    printStatus(null);                printMethod("table.firstRow()");                t.firstRow();                printStatus(null);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -