//# include "jk_custom_erp.h" //# include "jk_custom_erp_struct.h" //#include //#include "jk_custom_erp_struct1.h" //#include //# include "common_itk_util.h" //#include //#include //#include //#include //#include //#include //#include //#include //#include // ///************************************************ //* //* 将物料信息传递到数据库 //* //*************************************************/ // //void JK_upadte_material_table1(vector sm_bean_vec) //{ // int ifail = 0; // date_t current_date; // char create_date_str[32] = "\0"; // current_time(¤t_date); // sprintf(create_date_str,"%04d-%02d-%02d",current_date.year,1+ current_date.month,current_date.day); // // if(ConnServer(JK_DB_USER_NAME,JK_DB_USER_PWD,JK_DB_URL) == -1) // { // ECHO("提示:中间数据表访问失败\n"); // // EMH_store_error_s1( EMH_severity_information, // ERROR_ERP_LOGIN_FAIL, // "中间数据表访问失败" ); // ifail = ERROR_ERP_LOGIN_FAIL; // return; // } // // char updateSQL[3000] = "\0"; // // for(int i = 0;i < sm_bean_vec.size();i++){ // sprintf(updateSQL,"UPDATE %s SET JK_STATUS='4',JK_OPERATE_TIME='%s' WHERE JK_ITEM_ID='%s' AND JK_STATUS='0'", // JK_MATERIAL_TABLE,create_date_str,sm_bean_vec[i].JK_ITEM_ID); // if(ExecuteSQLNoInputParam(updateSQL)==-1) // { // ECHO("提示:插入BOM_TABLE表 失败, %s \n",updateSQL); // ifail = ERROR_OCI_FAIL; // EMH_store_error(EMH_severity_error, ifail); // //goto end_handler; // } // sprintf(updateSQL,"UPDATE %s SET JK_STATUS='3',JK_OPERATE_TIME='%s' WHERE JK_ITEM_ID='%s' AND JK_STATUS='2'", // JK_MATERIAL_TABLE,create_date_str,sm_bean_vec[i].JK_ITEM_ID); // if(ExecuteSQLNoInputParam(updateSQL)==-1) // { // ECHO("提示:插入BOM_TABLE表 失败, %s \n",updateSQL); // ifail = ERROR_OCI_FAIL; // EMH_store_error(EMH_severity_error, ifail); // //goto end_handler; // } // } // // ExecuteSQLNoInputParam("commit"); // DisConnServer(); // //} //// //void JK_write_material_to_DB1(vector sm_bean_vec, // vector &faild_m_vec) //{ // JK_upadte_material_table1(sm_bean_vec); // int i = 0, // ifail = 0; // char fields_material[4096]="", // insert_values_material[4096]="", // sql_value[10280] = "\0"; // for( i = 0; i < 45; i++ ) // { // strcat(fields_material, jk_material_fields[i]); // if( i != 44 ) // strcat(fields_material,","); // } // // if(ConnServer(JK_DB_USER_NAME,JK_DB_USER_PWD,JK_DB_URL)== -1) // { // ECHO("提示:中间数据表访问失败\n"); // // EMH_store_error_s1( EMH_severity_information, // ERROR_ERP_LOGIN_FAIL, // "中间数据表访问失败" ); // ifail = ERROR_ERP_LOGIN_FAIL; // return; // } // // for(i = 0; i < sm_bean_vec.size(); i++ ) // { // strcpy(insert_values_material,"'"); // strcat(insert_values_material,sm_bean_vec[i].JK_ITEM_ID.c_str()); // strcat(insert_values_material,"','");// 物料编码 // strcat(insert_values_material,sm_bean_vec[i].JK_ITEM_NAME.c_str()); // strcat(insert_values_material,"','"); // 物料名称 // strcat(insert_values_material,sm_bean_vec[i].JK_ITEM_SPEC_MODEL.c_str()); // strcat(insert_values_material,"','"); // 规格型号 // strcat(insert_values_material,sm_bean_vec[i].JK_CLASS_CODE.c_str()); // strcat(insert_values_material,"','"); // 存货大类编码 // strcat(insert_values_material,sm_bean_vec[i].JK_PROD_CODE.c_str()); // strcat(insert_values_material,"','"); // 产品识别号 //5 // strcat(insert_values_material,sm_bean_vec[i].JK_UOM.c_str()); // strcat(insert_values_material,"','"); // 主计量单位 // strcat(insert_values_material,sm_bean_vec[i].JK_CREATION_DATE.c_str()); // strcat(insert_values_material,"','"); // 申请日期 // strcat(insert_values_material,sm_bean_vec[i].JK_SCRAP_DATE.c_str()); // strcat(insert_values_material,"','"); // 停用日期 // strcat(insert_values_material,sm_bean_vec[i].JK_DESIGN_CODE.c_str()); // strcat(insert_values_material,"','"); // 图号信息 // strcat(insert_values_material,sm_bean_vec[i].JK_IS_SCRAP.c_str()); // strcat(insert_values_material,"','"); // 是否失效 //10 // strcat(insert_values_material,sm_bean_vec[i].JK_FROM.c_str()); // strcat(insert_values_material,"','"); // 发起人 // strcat(insert_values_material,sm_bean_vec[i].JK_TRANS_TIME.c_str()); // strcat(insert_values_material,"','"); // 传递时间 // strcat(insert_values_material,sm_bean_vec[i].JK_STATUS.c_str()); // strcat(insert_values_material,"','"); // 接收状态 // strcat(insert_values_material,sm_bean_vec[i].JK_ERROR_MSG.c_str()); // strcat(insert_values_material,"','"); // 错误信息 // strcat(insert_values_material,sm_bean_vec[i].JK_OPERATE_TIME.c_str()); // strcat(insert_values_material,"','"); // 接收时间 //15 // strcat(insert_values_material,sm_bean_vec[i].JK_PUID.c_str()); // strcat(insert_values_material,"','"); // 唯一编号 // strcat(insert_values_material,sm_bean_vec[i].JK_FROM_SYS.c_str()); // strcat(insert_values_material,"','"); // 传递方 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_1.c_str()); // strcat(insert_values_material,"','"); // 扩展字段1 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_2.c_str()); // strcat(insert_values_material,"','"); // 扩展字段2 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_3.c_str()); // strcat(insert_values_material,"','"); // 扩展字段3 //20 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_4.c_str()); // strcat(insert_values_material,"','"); // 扩展字段4 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_5.c_str()); // strcat(insert_values_material,"','"); // 扩展字段5 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_6.c_str()); // strcat(insert_values_material,"','"); // 扩展字段6 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_7.c_str()); // strcat(insert_values_material,"','"); // 扩展字段7 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_8.c_str()); // strcat(insert_values_material,"','"); // 扩展字段8 //25 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_9.c_str()); // strcat(insert_values_material,"','"); // 扩展字段9 // strcat(insert_values_material,sm_bean_vec[i].JK_ATTR_10.c_str());// 扩展字段10 //27 // strcat(insert_values_material,"','"); // strcat(insert_values_material,sm_bean_vec[i].JK_UNIT_WEIGHT.c_str()); // strcat(insert_values_material,"','"); // 单位重量 // strcat(insert_values_material,sm_bean_vec[i].JK_UNIT_VOLUME.c_str()); // strcat(insert_values_material,"','"); // 单位体积 // strcat(insert_values_material,sm_bean_vec[i].JK_DOMSC_MARKET.c_str()); // strcat(insert_values_material,"','"); // 是否内销 //30 // strcat(insert_values_material,sm_bean_vec[i].JK_CONSUM.c_str()); // strcat(insert_values_material,"','"); // 是否耗用 // strcat(insert_values_material,sm_bean_vec[i].JK_IS_BUY.c_str()); // strcat(insert_values_material,"','"); // 是否采购 // strcat(insert_values_material,sm_bean_vec[i].JK_IS_MAKE.c_str()); // strcat(insert_values_material,"','"); // 是否自制 // strcat(insert_values_material,sm_bean_vec[i].JK_OUT_SOURCE.c_str()); // strcat(insert_values_material,"','"); // 是否委外 // strcat(insert_values_material,sm_bean_vec[i].JK_ACCOUNT_SET.c_str()); // strcat(insert_values_material,"','"); // 默认账套 //35 // strcat(insert_values_material,sm_bean_vec[i].JK_BUSINESS_TYPE.c_str()); // strcat(insert_values_material,"','"); // 业务类型 // strcat(insert_values_material,sm_bean_vec[i].JK_BUYER.c_str()); // strcat(insert_values_material,"','"); // 采购员 // strcat(insert_values_material,sm_bean_vec[i].JK_PURLEAD_TIME.c_str()); // strcat(insert_values_material,"','"); // 固定提前期 // strcat(insert_values_material,sm_bean_vec[i].JK_SAFE_STOCK.c_str()); // strcat(insert_values_material,"','"); // 安全库存 // strcat(insert_values_material,sm_bean_vec[i].JK_SUPPLY_TYPE1.c_str()); // strcat(insert_values_material,"','"); // 供应类型 //40 // strcat(insert_values_material,sm_bean_vec[i].JK_WARE_HOUSE1.c_str()); // strcat(insert_values_material,"','"); // 默认仓库 // strcat(insert_values_material,sm_bean_vec[i].JK_INNTRANS_COE.c_str()); // strcat(insert_values_material,"','"); // 内部交易价格系数 // strcat(insert_values_material,sm_bean_vec[i].JK_HOUSE_KEEPER.c_str()); // strcat(insert_values_material,"','"); // 库管员 // strcat(insert_values_material,sm_bean_vec[i].JK_IS_INNTRANS.c_str()); // strcat(insert_values_material,"','"); // 是否内部交易 // strcat(insert_values_material,sm_bean_vec[i].JK_PLAN_METHOD.c_str());//计划方式 // strcat(insert_values_material," '"); // // printf("技术型号====%s\n",sm_bean_vec[i].JK_PROD_CODE.c_str()); // printf("insert_values_material====%s\n",insert_values_material); // // /*strcpy(sql_value,"insert into "); // strcat(sql_value,JK_MATERIAL_TABLE); // strcat(sql_value," ("); // strcat(sql_value,fields_material); // strcat(sql_value," ) values ("); // strcat(sql_value,insert_values_material); // strcat(sql_value, ")");*/ // // sprintf(sql_value,"insert into %s (%s ) values (%s )", // JK_MATERIAL_TABLE, // fields_material, // insert_values_material); // printf("SQL =>%s\n",sql_value); // // if(ExecuteSQLNoInputParam(sql_value)==-1) // { // printf("提示:插入TABLE表 失败, %s \n",sql_value); // ifail = ERROR_OCI_FAIL; // EMH_store_error(EMH_severity_error, ifail); // faild_m_vec.push_back(sm_bean_vec[i]); // //goto end_handler; // }else{ // printf("提示:插入TABLE表 成功, %s \n",sql_value); // } // } // if(ifail == 0) // { // ExecuteSQLNoInputParam("commit"); // }else{ // EMH_store_error_s1(EMH_severity_user_error,ifail,"[物料传递U8失败,请联系管理员!!]");//错误弹窗 // } // //end_handler: // // DisConnServer(); // //} //// //// //// //// //// //// //// ///******************************************************* //* //* 获取单个物料的属性 //* //********************************************************/ //void JK_get_material_props1(tag_t obj_tag , // vector & sm_bean_vec, // vector bigCodeVec, // vector qrBigCodeVec, // map uomMapping) //{ // int ifail = 0 , // status_count = 0, // design_count = 0, // master_count = 0, // i = 0; // tag_t item_tag =NULLTAG, // *status_tags = NULL, // *desin_tags =NULL, // * master_tags = NULL, // master_tag = NULLTAG, // uom_tag =NULLTAG, // current_user_tag = NULLTAG, // current_group_mem_tag = NULLTAG, // person_tag = NULLTAG, // classification_object = NULLTAG, // parentTag = NULLTAG, // status_tag = NULLTAG; // // double dbjk8UnitWeight = 0,//单位重量 // dbjk8UnitVolume = 0,//单位体积 // dbjk8PurLeadTime=0,//固定提前期 // dbjk8SafeStock=0,//安全库存 // dbjk8InnTransCoe=0;//内部交易价格系数 // // // // char item_id[ITEM_id_size_c + 1] = "\0", // *object_name = NULL, // *jk8SpecModel = NULL, // //*jk8StockBigTypeNo = NULL, // *jk8TechModel = NULL, // *represented_by =NULL, // *jk8UnitWeight1 =NULL,//0 // *jk8UnitVolume1 =NULL,//0 // jk8UnitWeight[32 + 1]="\0", //单位重量" // jk8UnitVolume[32 + 1]="\0",//单位体积" // *jk8IsDomesticMarket =NULL,//是否内销 // *jk8Isconsumables =NULL,//是否耗用" // *jk8IsBuy =NULL,//是否采购" // *jk8IsMake =NULL,//是否自制" // *jk8IsOutsource =NULL,//是否委外" // *jk8AccountSet =NULL,//默认账套" // *jk8BusinessType =NULL,//业务类型" // *jk8Buyer =NULL,//采购员" // *jk8PurLeadTime1 =NULL,//0 // *jk8SafeStock1 =NULL,//0 // jk8PurLeadTime[32 + 1]="\0",//固定提前期" // jk8SafeStock[32 + 1]="\0",//安全库存" // *jk8SupplyType1 =NULL,//供应类型" // jk8SupplyType2[40]="\0", // *jk8Warehouse1 =NULL,//默认仓库" // jk8Warehouse2[40]="\0", // *jk8InnTransCoe1 =NULL,//0 // jk8InnTransCoe[32 + 1]="\0",//内部交易价格系数" // *jk8WarehouseKeeper =NULL,//库管员" // *jk8IsInnTrans =NULL,//是否内部交易" // *jk8PlanMethod =NULL,//计划方式" // create_date_str[32] = "\0", // person_name[SA_person_name_size_c + 1] = "\0", // * icsID = NULL, // *uom_str = NULL; // date_t status_date ; // string is_scrap,scrap_date; // date_t current_date; // logical isclassed = false; // logical isFilter = false; // //添加物料大类编码的过滤 // // //获取分类属性 // ITKCALL(ICS_is_wsobject_classified(obj_tag,&isclassed));//判断是否已经分类 // if(isclassed){ // //char * icOid = NULL; // ITKCALL(ICS_ask_classification_object(obj_tag,&classification_object)); // // ITKCALL(ICS_ico_ask_class(classification_object,&icsID)); // // // // vector::iterator it; // it = find(qrBigCodeVec.begin(),qrBigCodeVec.end(),icsID); // if(it != qrBigCodeVec.end()) // { // printf("\n[ %s ]不包含在嵌软里面\n",icsID); // if(icsID !=NULL) // { // MEM_free(icsID); // icsID =NULL; // } // return; // } // // it = find(bigCodeVec.begin(),bigCodeVec.end(),icsID); // // if(it != bigCodeVec.end()){ // printf("\n[ %s ]需要截取头两位\n",icsID); // isFilter = true; // }else{ // printf("\n[ %s ]需要截取头5位\n",icsID); // isFilter = false; // } // // }else{ // printf("\n 没有发送到分类 \n"); // return ; // } // // // //获取当前时间 // current_time(¤t_date); // sprintf(create_date_str,"%04d-%02d-%02d",current_date.year,1+ current_date.month,current_date.day); // // ITKCALL(SA_ask_current_groupmember(¤t_group_mem_tag)); // ITKCALL(SA_ask_groupmember_user(current_group_mem_tag,¤t_user_tag)); // ITKCALL(SA_ask_user_person(current_user_tag,&person_tag)); // ITKCALL(SA_ask_person_name(person_tag , person_name)); // printf("person_name=> %s\n",person_name); // // ITKCALL(AOM_ask_value_tags(obj_tag,"IMAN_master_form_rev",&master_count,&master_tags)); // if(master_count > 0) // { // master_tag = master_tags[0]; // } // // //获取分类属性 //// ITKCALL(ICS_is_wsobject_classified(obj_tag,&isclassed));//判断是否已经分类 //// if(isclassed){ //// //char * icOid = NULL; //// ITKCALL(ICS_ask_classification_object(obj_tag,&classification_object)); //// //// ITKCALL(ICS_ico_ask_class(classification_object,&icsID)); //// //// } //// // // ITKCALL(ifail = ITEM_ask_item_of_rev(obj_tag,&item_tag));//通过版本获取item对象 // // // ITKCALL(ifail = ITEM_ask_id(item_tag,item_id));//物料编码 // // ITKCALL(ifail = AOM_ask_value_string(obj_tag,"object_name",&object_name));//物料名称 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8SpecModel,&jk8SpecModel));//规格型号 // printf("规格型号=%s,\n",jk8SpecModel); // // //ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8StockBigTypeNo,&jk8StockBigTypeNo));//存货大类编码 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8TechModel,&jk8TechModel));//产品识别号 // printf("产品识别号=%s,\n",jk8TechModel); // // ITKCALL(ifail = AOM_UIF_ask_value(master_tag,MATERIAL_jk8UnitWeight,&jk8UnitWeight1)); // // ITKCALL(ifail = AOM_ask_value_double(master_tag,MATERIAL_jk8UnitWeight,&dbjk8UnitWeight));//单位重量 // sprintf(jk8UnitWeight,"%.8f",dbjk8UnitWeight); // // ITKCALL(ifail = AOM_UIF_ask_value(master_tag,MATERIAL_jk8UnitVolume,&jk8UnitVolume1)); // ITKCALL(ifail = AOM_ask_value_double(master_tag,MATERIAL_jk8UnitVolume,&dbjk8UnitVolume));//单位体积 // sprintf(jk8UnitVolume,"%.8f",dbjk8UnitVolume); // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8IsDomesticMarket,&jk8IsDomesticMarket));//是否内销 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8Isconsumables,&jk8Isconsumables));//是否耗用 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8IsBuy,&jk8IsBuy));//是否采购 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8IsMake,&jk8IsMake));//是否自制 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8IsOutsource,&jk8IsOutsource));//是否委外 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8AccountSet,&jk8AccountSet));//默认账套 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8BusinessType,&jk8BusinessType));//业务类型 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8Buyer,&jk8Buyer));//采购员 // // ITKCALL(ifail = AOM_UIF_ask_value(master_tag,MATERIAL_jk8PurLeadTime,&jk8PurLeadTime1)); // ITKCALL(ifail = AOM_ask_value_double(master_tag,MATERIAL_jk8PurLeadTime,&dbjk8PurLeadTime));//固定提前期 // sprintf(jk8PurLeadTime,"%.8f",dbjk8PurLeadTime); // // ITKCALL(ifail = AOM_UIF_ask_value(master_tag,MATERIAL_jk8SafeStock,&jk8SafeStock1)); // ITKCALL(ifail = AOM_ask_value_double(master_tag,MATERIAL_jk8SafeStock,&dbjk8SafeStock));//安全库存 // sprintf(jk8SafeStock,"%.8f",dbjk8SafeStock); // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8SupplyType1,&jk8SupplyType1));//供应类型 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8Warehouse1,&jk8Warehouse1));//默认仓库 // // ITKCALL(ifail = AOM_UIF_ask_value(master_tag,MATERIAL_jk8InnTransCoe,&jk8InnTransCoe1)); // ITKCALL(ifail = AOM_ask_value_double(master_tag,MATERIAL_jk8InnTransCoe,&dbjk8InnTransCoe));//内部交易价格系数 // sprintf(jk8InnTransCoe,"%.8f",dbjk8InnTransCoe); // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8WarehouseKeeper,&jk8WarehouseKeeper));//库管员 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8IsInnTrans,&jk8IsInnTrans));//是否内部交易 // // ITKCALL(ifail = AOM_ask_value_string(master_tag,MATERIAL_jk8PlanMethod,&jk8PlanMethod));//计划方式 // // ITKCALL(ifail = AOM_UIF_ask_value(obj_tag,"TC_Is_Represented_By",&represented_by));//物料信息 // // //date_released name // ITKCALL(ifail = AOM_UIF_ask_value(item_tag,"uom_tag",&uom_str));//单位 // //ITKCALL(ifail = AOM_ask_value_string(item_tag,"uom_tag",&uom_str));//单位 // tag_t my_uom_tag = NULLTAG; // //ITKCALL(ifail = ITEM_ask_unit_of_measure(item_tag,&my_uom_tag)); // //ITKCALL(ifail = UOM_ask_symbol(my_uom_tag,&uom_str)); // // ITKCALL(ifail = AOM_ask_value_tags(obj_tag,"release_status_list",&status_count,&status_tags));//是否失效 // // if(status_count > 0) // { // status_tag = status_tags[0]; // AOM_ask_value_date(status_tag,"date_released",&status_date); // // } // // for(i = 1;i < status_count;i++) // { // date_t date_t_i ; // // AOM_ask_value_date(status_tags[i],"date_released",&date_t_i); // int day_count1 = sum(status_date.year ,1+status_date.month , status_date.day); // int day_count2 = sum(date_t_i.year , 1+date_t_i.month , date_t_i.day); // if(day_count1 < day_count2) // { // status_tag = status_tags[i]; // status_date = date_t_i; // } // } // // is_scrap.assign("0"); // if(status_tag !=NULLTAG) // { // char * status_name = NULL; // ITKCALL(AOM_ask_value_string(status_tag,"name",&status_name)); // if(strcmp(status_name,SCRAPE_STATUS_NAME) ==0){ // is_scrap.assign("1"); // char scrp_date_str[32] = "\0"; // sprintf(scrp_date_str,"%04d-%02d-%02d",status_date.year,1 + status_date.month,status_date.day); // scrap_date.assign(scrp_date_str); // // }else{ // //scrap_date.assign("2099-12-31"); // scrap_date.assign("\0"); // } // // if(status_name !=NULL){ // MEM_free(status_name); // status_name = NULL; // } // }else{ // //scrap_date.assign("2099-12-31"); // scrap_date.assign("\0"); // } // // //printf("uom_tag => %s TC_Is_Represented_By => %s \n",uom_str,represented_by); // // JK_MATERIAL_STRUCT1 m_bean; // // /*****************写入属性*****************/ // m_bean.JK_ITEM_ID.assign(item_id); // m_bean.JK_ITEM_NAME.assign(object_name); // m_bean.JK_ITEM_SPEC_MODEL.assign(jk8SpecModel); // char BIG_CODE[32] = "\0"; // char T_BIG_CODE[6] = "\0"; // sprintf(T_BIG_CODE,"%c%c",item_id[0],item_id[1]); // if(isFilter){ // if(strcmp(T_BIG_CODE,"E-")==0){ // sprintf(BIG_CODE,"%c%c",item_id[2],item_id[3]); // }else{ // sprintf(BIG_CODE,"%c%c",item_id[0],item_id[1]); // } // // }else{ // if(strcmp(T_BIG_CODE,"E-")==0){ // sprintf(BIG_CODE,"%c%c%c%c%c",item_id[2],item_id[3],item_id[4],item_id[5],item_id[6]); // }else{ // sprintf(BIG_CODE,"%c%c%c%c%c",item_id[0],item_id[1],item_id[2],item_id[3],item_id[4]); // } // } // m_bean.JK_CLASS_CODE.assign(BIG_CODE);//icsID jk8StockBigTypeNo // // m_bean.JK_PROD_CODE.assign(jk8TechModel); // // // map::iterator mapit; // //printf("uom_str = %s \n",uom_str); // mapit = uomMapping.find(uom_str); // if(mapit != uomMapping.end()){ // //printf(" find uom %s = %s \n",mapit->first.c_str(),mapit->second.c_str()); // m_bean.JK_UOM.assign(mapit->second.c_str());// // }else{ // m_bean.JK_UOM.assign("01");// // } // m_bean.JK_CREATION_DATE.assign(create_date_str); // m_bean.JK_SCRAP_DATE.assign(scrap_date); // m_bean.JK_DESIGN_CODE.assign(represented_by); // m_bean.JK_IS_SCRAP.assign(is_scrap); // // m_bean.JK_FROM.assign(person_name); // m_bean.JK_TRANS_TIME.assign(create_date_str); // m_bean.JK_STATUS.assign("0"); // m_bean.JK_FROM_SYS.assign("TC"); // /******************************************/ // //if(strcmp(jk8UnitWeight1,"")!=0){ // m_bean.JK_UNIT_WEIGHT.assign(jk8UnitWeight); // //}else{ // //m_bean.JK_UNIT_WEIGHT.assign(jk8UnitWeight1); // //} //// if(strcmp(jk8UnitVolume1,"")!=0){ // m_bean.JK_UNIT_VOLUME.assign(jk8UnitVolume); // //}else{ // //m_bean.JK_UNIT_VOLUME.assign(jk8UnitVolume1); // //} // m_bean.JK_DOMSC_MARKET.assign(jk8IsDomesticMarket); // m_bean.JK_CONSUM.assign(jk8Isconsumables); // m_bean.JK_IS_BUY.assign(jk8IsBuy); // m_bean.JK_IS_MAKE.assign(jk8IsMake); // m_bean.JK_OUT_SOURCE.assign(jk8IsOutsource); // m_bean.JK_ACCOUNT_SET.assign(jk8AccountSet); // m_bean.JK_BUSINESS_TYPE.assign(jk8BusinessType); // m_bean.JK_BUYER.assign(jk8Buyer); // //if(strcmp(jk8PurLeadTime1,"")!=0){ // m_bean.JK_PURLEAD_TIME.assign(jk8PurLeadTime); // //}else{ // // m_bean.JK_PURLEAD_TIME.assign(jk8PurLeadTime1); // //} // printf("jk8PurLeadTime1=%s\n",jk8PurLeadTime1); // //if(strcmp(jk8SafeStock1,"")!=0){ // m_bean.JK_SAFE_STOCK.assign(jk8SafeStock); // //}else{ // // m_bean.JK_SAFE_STOCK.assign(jk8SafeStock1); // //} // printf("jk8SafeStock1=%s\n",jk8SafeStock1); // if(strcmp(jk8SupplyType1,"")!=0){ // strncpy(jk8SupplyType2,jk8SupplyType1, 1);//截取第一个 // printf("jk8SafeStock2=%s\n",jk8SupplyType2); // m_bean.JK_SUPPLY_TYPE1.assign(jk8SupplyType2); // }else{ // m_bean.JK_SUPPLY_TYPE1.assign("3"); // } // // printf("jk8Warehouse1=%s\n",jk8SafeStock1); // // if(strcmp(jk8Warehouse1,"")!=0){ // strncpy(jk8Warehouse2,jk8Warehouse1, 2);//截取第一个 // // m_bean.JK_WARE_HOUSE1.assign(jk8Warehouse2); // }else{ // m_bean.JK_WARE_HOUSE1.assign("01"); // } // // //if(strcmp(jk8InnTransCoe1,"")!=0){ // m_bean.JK_INNTRANS_COE.assign(jk8InnTransCoe); // //}else{ // // m_bean.JK_INNTRANS_COE.assign(jk8InnTransCoe1); // //} // m_bean.JK_HOUSE_KEEPER.assign(jk8WarehouseKeeper); // m_bean.JK_IS_INNTRANS.assign(jk8IsInnTrans); // m_bean.JK_PLAN_METHOD.assign(jk8PlanMethod); // // // sm_bean_vec.push_back(m_bean); // // //释放资源 // if(master_tags !=NULL) // { // MEM_free(master_tags); // master_tags = NULL; // } // // if(jk8SpecModel !=NULL) // { // MEM_free(jk8SpecModel); // jk8SpecModel =NULL; // } // // // // if(jk8TechModel !=NULL) // { // MEM_free(jk8TechModel); // jk8TechModel =NULL; // } // // if(status_tags !=NULL) // { // MEM_free(status_tags); // status_tags =NULL; // } // // if(desin_tags !=NULL){ // MEM_free(desin_tags); // desin_tags = NULL; // } // // if(uom_str != NULL) // { // MEM_free(uom_str); // uom_str =NULL; // } // // if(object_name != NULL) // { // MEM_free(object_name); // object_name = NULL; // // } // if(represented_by !=NULL){ // MEM_free(represented_by); // represented_by = NULL; // } // // if(icsID !=NULL) // { // MEM_free(icsID); // icsID =NULL; // } // // // if(jk8IsDomesticMarket !=NULL) // { // MEM_free(jk8IsDomesticMarket); // jk8IsDomesticMarket =NULL; // } // if(jk8Isconsumables !=NULL) // { // MEM_free(jk8Isconsumables); // jk8Isconsumables =NULL; // } // if(jk8IsBuy !=NULL) // { // MEM_free(jk8IsBuy); // jk8IsBuy =NULL; // } // if(jk8IsMake !=NULL) // { // MEM_free(jk8IsMake); // jk8IsMake =NULL; // } // if(jk8IsOutsource !=NULL) // { // MEM_free(jk8IsOutsource); // jk8IsOutsource =NULL; // } // if(jk8AccountSet !=NULL) // { // MEM_free(jk8AccountSet); // jk8AccountSet =NULL; // } // if(jk8BusinessType !=NULL) // { // MEM_free(jk8BusinessType); // jk8BusinessType =NULL; // } // if(jk8Buyer !=NULL) // { // MEM_free(jk8Buyer); // jk8Buyer =NULL; // } // if(jk8SupplyType1 !=NULL) // { // MEM_free(jk8SupplyType1); // jk8SupplyType1 =NULL; // } // if(jk8Warehouse1 !=NULL) // { // MEM_free(jk8Warehouse1); // jk8Warehouse1 =NULL; // } // if(jk8WarehouseKeeper !=NULL) // { // MEM_free(jk8WarehouseKeeper); // jk8WarehouseKeeper =NULL; // } // // if(jk8IsInnTrans !=NULL) // { // MEM_free(jk8IsInnTrans); // jk8IsInnTrans =NULL; // } // // if(jk8PlanMethod !=NULL) // { // MEM_free(jk8PlanMethod); // jk8PlanMethod =NULL; // } // // if(jk8UnitWeight1 !=NULL) // { // MEM_free(jk8UnitWeight1); // jk8UnitWeight1 =NULL; // } // if(jk8UnitVolume1 !=NULL) // { // MEM_free(jk8UnitVolume1); // jk8UnitVolume1 =NULL; // } // if(jk8PurLeadTime1 !=NULL) // { // MEM_free(jk8PurLeadTime1); // jk8PurLeadTime1 =NULL; // } // if(jk8SafeStock1 !=NULL) // { // MEM_free(jk8SafeStock1); // jk8SafeStock1 =NULL; // } // if(jk8InnTransCoe1 !=NULL) // { // MEM_free(jk8InnTransCoe1); // jk8InnTransCoe1 =NULL; // } // //} // // // // ///******************************************************* //* //* 物料发送到ERP //* handler 参数: //* include_type 需要包含哪些类型 多种类型用/分开,eg:ItemRevision/JK8MaterialRevision/JK8LSMaterialRevision //* debug 是否需要记录log日志(默认false) true需要/false不需要 eg:true //* //*******************************************************/ //int sendMaterialInfomationAddDisabled(EPM_action_message_t msg) //{ // ECHO("\n********************************"); // ECHO("\n********传递物料开始************"); // ECHO("\n********************************\n"); // //参数定义 // int ifail = EPM_go , // arg_cnt = 0 , // i = 0 , // att_cnt = 0; // // tag_t task_tag = NULLTAG , // root_task_tag =NULLTAG , // *attachments = NULL; // // char * argflag = NULL , // *argvalue =NULL , // *arg = NULL , // arg_value[1024] = "\0", // type_class[WSO_object_type_size_c+1] ="\0"; // // logical is_debug = false; // // //记录错误信息 // map errMap; // // vector type_vec; // // vector material_vec; // // vector bigCodeVec;//vector bigCodeVec,vector qrBigCodeVec // vector qrBigCodeVec; // vector uomVec; // map uomMapping; // //获取需要获取两为编码的分类编码 // getPrefStrings("JK_U8_BIG_CODE_TOW",TC_preference_site,bigCodeVec); // //获取不传递的分类编码 // getPrefStrings("JK_U8_QR_BIG_CODE",TC_preference_site,qrBigCodeVec); // //获取单位 // getPrefStrings("JK_UOM_PLM_U8",TC_preference_site,uomVec); // for(i = 0 ; i < uomVec.size() ; i++){ // string uom_u8 = uomVec[i]; // vector uV; // Split(uom_u8,"=",uV); // //printf("%s%d \n",uom_u8.c_str(),uV.size()); // if(uV.size() == 2){ // printf("%s %s \n",uV[1],uV[0]); // uomMapping.insert(pair(uV[1],uV[0])); // } // } // //获取handler参数的个数 // arg_cnt = TC_number_of_arguments(msg.arguments); // ECHO("参数个数为:%d\n",arg_cnt); // if (arg_cnt > 0) // { // for (i=0;i(key_id,HANDLER_ARGUMENT_ERROR)); // } // } // //是否需要记录log日志 // else if(stricmp(argflag, "debug") == 0) // { // if(argvalue != NULL) // { // if(strcmp(argvalue,"true")==0) // { // is_debug = true; // } // else // { // is_debug = false; // } // } // else // { // // string key_id; // key_id.assign("缺少secondary_type参数"); // errMap.insert(pair(key_id,HANDLER_ARGUMENT_ERROR)); // } // } // } // MEM_free(argflag); // MEM_free(argvalue); // } // // //获取目标对象 // task_tag = msg.task; // if(task_tag == NULLTAG) // { // // return EPM_nogo; // } // EPM_ask_root_task(task_tag, &root_task_tag); // EPM_ask_attachments(root_task_tag, EPM_target_attachment, &att_cnt, &attachments); // for(i = 0 ;i < att_cnt;i++){ // tag_t target_tag = attachments[i]; // //获取对象的类型 // ITKCALL( WSOM_ask_object_type(target_tag, type_class)); // ECHO("对象类型%s\n",type_class); // string type_str ; // type_str.assign(type_class); // vector::iterator it; // it = find(type_vec.begin(),type_vec.end(),type_str); // if(it == type_vec.end()){ // ECHO("此类型不包含在include_type中\n"); // continue; // } // char * item_id_temp = NULL; // ITKCALL(AOM_ask_value_string(target_tag,"item_id",&item_id_temp)); // if(strcmp(item_id_temp,"E-") == 1 ){ // ECHO("E-开头的物料不需要传递\n"); // if(item_id_temp !=NULL){ // MEM_free(item_id_temp); // item_id_temp = NULL; // } // continue; // } // if(item_id_temp !=NULL){ // MEM_free(item_id_temp); // item_id_temp = NULL; // } // //TODO 获取物料的最新版本 // int revision_num=0; // tag_t *revision_list=NULLTAG; // AOM_ask_value_tags(target_tag,"revision_list",&revision_num,&revision_list); // tag_t obj_tag=revision_list[revision_num-1]; // JK_get_material_props1(obj_tag , material_vec,bigCodeVec,qrBigCodeVec,uomMapping); // } // if(attachments!=NULL){ // MEM_free(attachments); // attachments =NULL; // } // vector faild_vec ; // JK_write_material_to_DB1(material_vec,faild_vec); // material_vec.clear(); // // ECHO("\n********************************"); // ECHO("\n********传递物料结束************"); // ECHO("\n********************************\n"); // return 0; //} // //