public boolean addMoidfyModeData(String url,String modeid,String ygxm,String duizhaobiao_createid) throws RemoteException{
ModeDateServicePortTypeProxy client= new ModeDateServicePortTypeProxy(url);
// String modeid ="23";
String dataid ="";
// String ygxm ="109";
String xml = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>";
xml +="<ROOT>";
xml +="<header>";
xml +="<userid>"+duizhaobiao_createid+"</userid>";//用户id
xml +="<modeid>"+modeid+"</modeid>";//模块id
xml +="<id>"+dataid+"</id>";//billid 如果是新增则值为空 如果有数据则为修改
xml +="</header>";
xml +="<search>";
xml +="<condition />";
xml +="<right>Y</right>";//是否验证权限
xml +="</search>";
xml +="<data id=\"\">";
xml +="<maintable>";
xml +="<field>";
xml +="<filedname>ygxm</filedname>";//数据库名称
xml +="<filedlabel>OA员工姓名</filedlabel>";//字段名称
xml +="<fileddbtype>varchar(256)</fileddbtype>";//数据库类型
xml +="<filedvalue>"+ygxm+"</filedvalue>";//字段的值
xml +="<fieldshowname>姓名</fieldshowname>";
xml +="</field>";
xml +="</maintable>";
xml +="<detail></detail>";
xml +="</data>";
xml +="</ROOT>";
String result = client.saveModeData(xml);
boolean status = result.contains("操作成功");
return status;
}
// 最后要填到对照表的数据
Map<String, Object> duizhao = new HashMap<String, Object>();
//
log.info("从OAaction得到的数据==" + mapoa);
// 从配置文件得到的数据
ArrayList<ArrayList<String>> A = new ArrayList<ArrayList<String>>();
// 注意路径问题
log.info("PATH======" + PATH);
File f = new File(PATH);
String absolutePath = f.getAbsolutePath();
log.info("absolutePath======" + absolutePath);
// String url = getProperties_2(PATH, "Url");
// String dbname = getProperties_2(PATH, "DBname");
// String dbpassword = getProperties_2(PATH, "DBpassword");
String oabiao = getProperties_2(PATH, "OATable");
String ModeUrl = getProperties_2(PATH, "ModeUrl");
int count = 1;
int propsize = getPropsize(PATH);
log.info("配置文件行数==" + propsize);
for (int i = 2; i < propsize; i=i+4) {
ArrayList<String> b1 = new ArrayList<String>();
// b1.add(url);
// b1.add(dbname);
// b1.add(dbpassword);
b1.add(oabiao);
String duizhaobiao = getProperties_2(PATH, "duizhaobiao" + count);
String tixingSuc = getProperties_2(PATH, "tixingSuc"+count);
String tixingFail = getProperties_2(PATH, "tixingFail"+count);
String delete = getProperties_2(PATH, "delete"+count);
b1.add(duizhaobiao);
b1.add(tixingSuc);
b1.add(tixingFail);
b1.add(delete);
A.add(count - 1, b1);
count++;
}
//从数据库查询出的字段名称
ArrayList<String> a = new ArrayList<String>();
//对比之后相同的字段名称
ArrayList<String> a2 = new ArrayList<String>();
RecordSetTrans rs = new RecordSetTrans();
String sqlcolumns = "select name from sys.columns where object_id=object_id('" + duizhaobiao + "')";
try {
rs.executeQuery(sqlcolumns);
while (rs.next()) {
// Retrieve by column name
String id = rs.getString("name");
// Display values
a.add(id);
}
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
log.info("从数据库查出来的字段" + a);
for (int i = 0; i < a.size(); i++) {
if (mapoa.containsKey(a.get(i)) == true) {
a2.add(a.get(i));
log.info("循环比较" + a2);
String str = mapoa.get(a.get(i)).toString();
duizhao.put(a.get(i).toString(), str);
}
}
log.info("比较出来的字段" + a2);
log.info("填入对照表的数据==" + duizhao);