You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
363 lines
13 KiB
363 lines
13 KiB
#include <vector>
|
|
#include <map>
|
|
#include <string>
|
|
//针对发布状态的名称
|
|
#define SCRAPE_STATUS_NAME "失效" //废弃的状态的名称
|
|
//针对物料属性
|
|
#define MATERIAL_jk8SpecModel "jk8SpecModel" //规格型号
|
|
#define MATERIAL_jk8StockBigTypeNo "jk8StockBigTypeNo" //存货大类编码
|
|
#define MATERIAL_jk8TechModel "jk8TechModel" //产品识别号
|
|
|
|
#define MATERIAL_jk8UnitWeight "jk8UnitWeight" //单位重量 (2017.8.28新加18条表单属性)
|
|
#define MATERIAL_jk8UnitVolume "jk8UnitVolume" //单位体积
|
|
#define MATERIAL_jk8IsDomesticMarket "jk8IsDomesticMarket" //是否内销
|
|
#define MATERIAL_jk8Isconsumables "jk8Isconsumables" //是否耗用
|
|
#define MATERIAL_jk8IsBuy "jk8IsBuy" //是否采购
|
|
#define MATERIAL_jk8IsMake "jk8IsMake" //是否自制
|
|
#define MATERIAL_jk8IsOutsource "jk8IsOutsource" //是否委外
|
|
#define MATERIAL_jk8AccountSet "jk8AccountSet" //默认账套
|
|
#define MATERIAL_jk8BusinessType "jk8BusinessType" //业务类型
|
|
#define MATERIAL_jk8Buyer "jk8Buyer" //采购员
|
|
#define MATERIAL_jk8PurLeadTime "jk8PurLeadTime" //固定提前期
|
|
#define MATERIAL_jk8SafeStock "jk8SafeStock" //安全库存
|
|
#define MATERIAL_jk8SupplyType1 "jk8SupplyType1" //供应类型
|
|
#define MATERIAL_jk8Warehouse1 "jk8Warehouse1" //默认仓库
|
|
#define MATERIAL_jk8InnTransCoe "jk8InnTransCoe" //内部交易价格系数
|
|
#define MATERIAL_jk8WarehouseKeeper "jk8WarehouseKeeper" //库管员
|
|
#define MATERIAL_jk8IsInnTrans "jk8IsInnTrans" //是否内部交易
|
|
#define MATERIAL_jk8PlanMethod "jk8PlanMethod" //计划方式
|
|
|
|
|
|
//针对BOM属性
|
|
#define BOM_Jk8SupplyType "jk8SupplyType1" //2017/11/2改 //供货类型 JK8SupplyType
|
|
#define BOM_Jk8Warehouse "jk8Warehouse1" //2017/11/2改 //仓库 JK8Warehouse
|
|
#define BOM_Jk8RemarkDesc "JK8Remark" //备注
|
|
#define BOM_JK_BOM_CWR "jk8SubCompLossRate" //子件损耗率
|
|
//针对BOM中的母件损耗率
|
|
#define BOM_jk8_mjshl "jk8ParentCompLossRate" //母件利用率
|
|
//数据库链接信息
|
|
#define JK_DB_USER_NAME "infodba" //用户名
|
|
#define JK_DB_USER_PWD "infodba" //密码
|
|
#define JK_DB_URL "//10.200.2.43/jktc" //正式机链接URL
|
|
//#define JK_DB_URL "//10.201.5.203/tc11" //测试链接URL
|
|
//#define JK_DB_URL "//10.201.5.202/JKTC" //测试链接URL
|
|
|
|
//中间表名称
|
|
#define JK_MATERIAL_TABLE "JK_MATERIAL_TABLE" //物料中间表
|
|
#define JK_BOM_PARENT_LINE_TABLE "JK_BOM_PARENT_LINE_TABLE" //BOM表头中间表
|
|
#define JK_BOM_CHILD_LINE_TABLE "JK_BOM_CHILD_LINE_TABLE" //BOM结构中间表
|
|
#define JK_BOM_SUBSTITUTE_PART_TABLE "JK_BOM_SUBSTITUTE_PART_TABLE" //BOMLINE替换件中间表
|
|
//替代件
|
|
#define JK_SUBSTITUTE_EffectiveDate "jk8EffectiveDate" //生效日期
|
|
#define JK_SUBSTITUTE_Order "jk8SubstitOrder" //替代次序
|
|
#define JK_SUBSTITUTE_Ratio "jk8SubstitRatio" //替代比
|
|
|
|
#define JK_SUBSTITUTE_EffectiveDate1 "JK8EffectiveDate" //生效日期1
|
|
#define JK_SUBSTITUTE_Order1 "JK8SubstitOrder" //替代次序1
|
|
#define JK_SUBSTITUTE_Ratio1 "JK8SubstitRatio" //替代比1
|
|
|
|
using namespace std;
|
|
|
|
|
|
|
|
|
|
/**********************************************************
|
|
*
|
|
* 金卡 物料中间表字段
|
|
*
|
|
***********************************************************/
|
|
char jk_material_fields1[45][45] = {
|
|
"JK_ITEM_ID", // 物料编码
|
|
"JK_ITEM_NAME", // 物料名称
|
|
"JK_ITEM_SPEC_MODEL", // 规格型号
|
|
"JK_CLASS_CODE", // 存货大类编码
|
|
"JK_PROD_CODE", // 产品识别号 //5
|
|
"JK_UOM", // 主计量单位
|
|
"JK_CREATION_DATE", // 申请日期
|
|
"JK_SCRAP_DATE", // 停用日期
|
|
"JK_DESIGN_CODE", // 图号信息
|
|
"JK_IS_SCRAP", // 是否失效 //10
|
|
"JK_FROM", // 发起人
|
|
"JK_TRANS_TIME", // 传递时间
|
|
"JK_STATUS", // 接收状态
|
|
"JK_ERROR_MSG", // 错误信息
|
|
"JK_OPERATE_TIME", // 接收时间 //15
|
|
"JK_PUID", // 唯一编号
|
|
"JK_FROM_SYS", // 传递方
|
|
"JK_ATTR_1", // 扩展字段1
|
|
"JK_ATTR_2", // 扩展字段2
|
|
"JK_ATTR_3", // 扩展字段3 //20
|
|
"JK_ATTR_4", // 扩展字段4
|
|
"JK_ATTR_5", // 扩展字段5
|
|
"JK_ATTR_6", // 扩展字段6
|
|
"JK_ATTR_7", // 扩展字段7
|
|
"JK_ATTR_8", // 扩展字段8 //25
|
|
"JK_ATTR_9", // 扩展字段9
|
|
"JK_ATTR_10", // 扩展字段10 //27
|
|
"JK_UNIT_WEIGHT", // "jk8UnitWeight单位重量" (2017.8.28中间表新加18个字段)
|
|
"JK_UNIT_VOLUME", // "jk8UnitVolume单位体积"
|
|
"JK_DOMSC_MARKET", // jk8IsDomesticMarket是否内销 //30
|
|
"JK_CONSUM", // "jk8Isconsumables是否耗用"
|
|
"JK_IS_BUY", // "jk8IsBuy是否采购"
|
|
"JK_IS_MAKE", // "jk8IsMake是否自制"
|
|
"JK_OUT_SOURCE", // "jk8IsOutsource是否委外"
|
|
"JK_ACCOUNT_SET", // "jk8AccountSet默认账套" //35
|
|
"JK_BUSINESS_TYPE", // "jk8BusinessType业务类型"
|
|
"JK_BUYER", // "jk8Buyer采购员"
|
|
"JK_PURLEAD_TIME", // "jk8PurLeadTime固定提前期"
|
|
"JK_SAFE_STOCK", // "jk8SafeStock安全库存"
|
|
"JK_SUPPLY_TYPE1", // "jk8SupplyType1供应类型" //40
|
|
"JK_WARE_HOUSE1", // "jk8Warehouse1默认仓库"
|
|
"JK_INNTRANS_COE", // "jk8InnTransCoe内部交易价格系数"
|
|
"JK_HOUSE_KEEPER", // "jk8WarehouseKeeper库管员"
|
|
"JK_IS_INNTRANS", // "jk8IsInnTrans是否内部交易"
|
|
"JK_PLAN_METHOD" // "jk8PlanMethod计划方式" //45 "LR"
|
|
|
|
};
|
|
|
|
|
|
/**********************************************************
|
|
*
|
|
* 金卡 物料存储最小单位
|
|
*
|
|
***********************************************************/
|
|
typedef struct{
|
|
string JK_ITEM_ID; // 物料编码 //item_id
|
|
string JK_ITEM_NAME; // 物料名称 //object_name
|
|
string JK_ITEM_SPEC_MODEL; // 规格型号 //jk8SpecModel(rev)
|
|
string JK_CLASS_CODE; // 存货大类编码 //jk8StockBigTypeNo(rev)
|
|
string JK_PROD_CODE; // 产品识别号 //5 //jk8TechModel(rev)
|
|
string JK_UOM; // 主计量单位 //uom_tag(item)
|
|
string JK_CREATION_DATE; // 申请日期 //now_date(system)
|
|
string JK_SCRAP_DATE; // 停用日期 //
|
|
string JK_DESIGN_CODE; // 图号信息 //
|
|
string JK_IS_SCRAP; // 是否失效 //10 //
|
|
string JK_FROM; // 发起人 //current_user_name
|
|
string JK_TRANS_TIME; // 传递时间 //now_date(system)
|
|
string JK_STATUS; // 接收状态 //0-新建,1-正常接收,2-异常未接收,3-失败已重传,4-未接收重传
|
|
string JK_ERROR_MSG; // 错误信息 //erp
|
|
string JK_OPERATE_TIME; // 接收时间 //15 //erp
|
|
string JK_PUID; // 唯一编号 //puid
|
|
string JK_FROM_SYS; // 传递方 //默认"TC"
|
|
string JK_ATTR_1; // 扩展字段1
|
|
string JK_ATTR_2; // 扩展字段2
|
|
string JK_ATTR_3; // 扩展字段3 //20
|
|
string JK_ATTR_4; // 扩展字段4
|
|
string JK_ATTR_5; // 扩展字段5
|
|
string JK_ATTR_6; // 扩展字段6
|
|
string JK_ATTR_7; // 扩展字段7
|
|
string JK_ATTR_8; // 扩展字段8 //25
|
|
string JK_ATTR_9; // 扩展字段9
|
|
string JK_ATTR_10; // 扩展字段10 //27
|
|
string JK_UNIT_WEIGHT; //单位重量 (2017.8.28新加18条表单属性)
|
|
string JK_UNIT_VOLUME; //单位体积
|
|
string JK_DOMSC_MARKET; //是否内销
|
|
string JK_CONSUM ; //是否耗用
|
|
string JK_IS_BUY ; //是否采购
|
|
string JK_IS_MAKE ; //是否自制
|
|
string JK_OUT_SOURCE; //是否委外
|
|
string JK_ACCOUNT_SET; //默认账套
|
|
string JK_BUSINESS_TYPE; //业务类型
|
|
string JK_BUYER ; //采购员
|
|
string JK_PURLEAD_TIME; //固定提前期
|
|
string JK_SAFE_STOCK; //安全库存
|
|
string JK_SUPPLY_TYPE1; //供应类型
|
|
string JK_WARE_HOUSE1; //默认仓库
|
|
string JK_INNTRANS_COE; //内部交易价格系数
|
|
string JK_HOUSE_KEEPER; //库管员
|
|
string JK_IS_INNTRANS; //是否内部交易
|
|
string JK_PLAN_METHOD; //计划方式
|
|
|
|
}JK_MATERIAL_STRUCT1;
|
|
|
|
|
|
|
|
/**********************************************************
|
|
*
|
|
* 金卡 BOM_P 结构中间表字段
|
|
*
|
|
***********************************************************/
|
|
char jk_p_bom_fields1[24][45] = {
|
|
"JK_BOM_ID", // 母件编码
|
|
"JK_BOM_REV", //视图版本
|
|
"JK_OWNING_USER", // 所有者(用户名称)
|
|
"JK_RATE", // 母件损耗率
|
|
"JK_CREATION_DATE", // 生效日期 //5
|
|
"JK_SCRAP_DATE", // 失效日期
|
|
"JK_IS_SCRAP", // 是否失效
|
|
"JK_FROM", // 发起人
|
|
"JK_TRANS_TIME", // 传递时间
|
|
"JK_STATUS", // 接收状态 //10
|
|
"JK_ERROR_MSG", // 错误信息
|
|
"JK_OPERATE_TIME", // 接收时间
|
|
"JK_PUID", // 唯一编号
|
|
"JK_FROM_SYS", // 传递方
|
|
"JK_ATTR_1", // 扩展字段1 //15
|
|
"JK_ATTR_2", // 扩展字段2
|
|
"JK_ATTR_3", // 扩展字段3
|
|
"JK_ATTR_4", // 扩展字段4
|
|
"JK_ATTR_5", // 扩展字段5
|
|
"JK_ATTR_6", // 扩展字段6 //20
|
|
"JK_ATTR_7", // 扩展字段7
|
|
"JK_ATTR_8", // 扩展字段8
|
|
"JK_ATTR_9", // 扩展字段9
|
|
"JK_ATTR_10" // 扩展字段10 //24
|
|
};
|
|
|
|
|
|
/********************************************************
|
|
*
|
|
* 金卡 BOM_P 结构存储最小单位
|
|
*
|
|
*********************************************************/
|
|
typedef struct{
|
|
string JK_BOM_ID; // 母件编码
|
|
string JK_BOM_REV; //视图版本
|
|
string JK_OWNING_USER; // 所有者(用户名称)
|
|
string JK_RATE; // 母件损耗率
|
|
string JK_CREATION_DATE; // 生效日期 //5
|
|
string JK_SCRAP_DATE; // 失效日期
|
|
string JK_IS_SCRAP; // 是否失效
|
|
string JK_FROM; // 发起人
|
|
string JK_TRANS_TIME; // 传递时间
|
|
string JK_STATUS; // 接收状态 //10
|
|
string JK_ERROR_MSG; // 错误信息
|
|
string JK_OPERATE_TIME; // 接收时间
|
|
string JK_PUID; // 唯一编号
|
|
string JK_FROM_SYS; // 传递方
|
|
string JK_ATTR_1; // 扩展字段1 //15
|
|
string JK_ATTR_2; // 扩展字段2
|
|
string JK_ATTR_3; // 扩展字段3
|
|
string JK_ATTR_4; // 扩展字段4
|
|
string JK_ATTR_5; // 扩展字段5
|
|
string JK_ATTR_6; // 扩展字段6 //20
|
|
string JK_ATTR_7; // 扩展字段7
|
|
string JK_ATTR_8; // 扩展字段8
|
|
string JK_ATTR_9; // 扩展字段9
|
|
string JK_ATTR_10; // 扩展字段10 //24
|
|
}JK_P_BOM_STRUCT1;
|
|
|
|
|
|
/**********************************************************
|
|
*
|
|
* 金卡 BOM_C结构中间表字段
|
|
*
|
|
***********************************************************/
|
|
char jk_c_bom_fields1[18][45] = {
|
|
"JK_BOM_ID", // 母件编码
|
|
"JK_BOM_REV", // BOM视图版本
|
|
"JK_BOM_CID", // 子件编码
|
|
"JK_SUPPLY_TYPE", // 供应类型
|
|
"JK_WAREHOUSE", // 仓库 //5
|
|
"JK_QUANTITY", // 基础用量/用量
|
|
"JK_REMARK", // 备注说明
|
|
"JK_ATTR_1", // 扩展字段1
|
|
"JK_ATTR_2", // 扩展字段2
|
|
"JK_ATTR_3", // 扩展字段3 //10
|
|
"JK_ATTR_4", // 扩展字段4
|
|
"JK_ATTR_5", // 扩展字段5
|
|
"JK_ATTR_6", // 扩展字段6
|
|
"JK_ATTR_7", // 扩展字段7
|
|
"JK_ATTR_8", // 扩展字段8 //15
|
|
"JK_ATTR_9", // 扩展字段9
|
|
"JK_ATTR_10", // 扩展字段10 //17
|
|
"JK_BOM_CWR"
|
|
};
|
|
|
|
|
|
/********************************************************
|
|
*
|
|
* 金卡 BOM_C结构存储最小单位
|
|
*
|
|
*********************************************************/
|
|
typedef struct{
|
|
string JK_BOM_ID; // 母件编码
|
|
string JK_BOM_REV; // BOM视图版本
|
|
string JK_BOM_CID; // 子件编码
|
|
string JK_SUPPLY_TYPE; // 供应类型
|
|
string JK_WAREHOUSE; // 仓库 //5
|
|
string JK_QUANTITY; // 基础用量/用量
|
|
string JK_REMARK; // 备注说明
|
|
string JK_ATTR_1; // 扩展字段1
|
|
string JK_ATTR_2; // 扩展字段2
|
|
string JK_ATTR_3; // 扩展字段3 //10
|
|
string JK_ATTR_4; // 扩展字段4
|
|
string JK_ATTR_5; // 扩展字段5
|
|
string JK_ATTR_6; // 扩展字段6
|
|
string JK_ATTR_7; // 扩展字段7
|
|
string JK_ATTR_8; // 扩展字段8 //15
|
|
string JK_ATTR_9; // 扩展字段9
|
|
string JK_ATTR_10; // 扩展字段10 //17
|
|
string JK_BOM_CWR;
|
|
}JK_C_BOM_STRUCT1;
|
|
|
|
|
|
|
|
/**********************************************************
|
|
*
|
|
* 金卡 BOM_SUB 结构中间表字段
|
|
*
|
|
***********************************************************/
|
|
char jk_sub_bom_fields1[17][45] = {
|
|
"JK_BOM_ID", // 母件编码
|
|
"JK_BOM_REV", // BOM视图版本
|
|
"JK_BOM_CID", // 子件编码
|
|
"JK_SUBSTITUTE_PART_ID", // 替代件编码
|
|
"JK_SUBSTITUTE_PART_INDEX", // 替代件次序 //5
|
|
"JK_SUBSTITUTE_PART_RATIO", // 替代件比例
|
|
"JK_SUBSTITUTE_PART_DATE", // 替代件生效时间
|
|
"JK_IS_GLOBAL", // 扩展字段1
|
|
"JK_ATTR_2", // 扩展字段2
|
|
"JK_ATTR_3", // 扩展字段3 //10
|
|
"JK_ATTR_4", // 扩展字段4
|
|
"JK_ATTR_5", // 扩展字段5
|
|
"JK_ATTR_6", // 扩展字段6
|
|
"JK_ATTR_7", // 扩展字段7
|
|
"JK_ATTR_8", // 扩展字段8 //15
|
|
"JK_ATTR_9", // 扩展字段9
|
|
"JK_ATTR_10" //扩展字段10 //17
|
|
};
|
|
|
|
|
|
/********************************************************
|
|
*
|
|
* 金卡 BOM_SUB 结构存储最小单位
|
|
*
|
|
*********************************************************/
|
|
typedef struct{
|
|
string JK_BOM_ID; // 母件编码
|
|
string JK_BOM_REV; // BOM视图版本
|
|
string JK_BOM_CID; // 子件编码
|
|
string JK_SUBSTITUTE_PART_ID; // 替代件编码
|
|
string JK_SUBSTITUTE_PART_INDEX; // 替代件次序 //5
|
|
string JK_SUBSTITUTE_PART_RATIO; // 替代件比例
|
|
string JK_SUBSTITUTE_PART_DATE; // 替代件生效时间
|
|
string JK_IS_GLOBAL; // 扩展字段1
|
|
string JK_ATTR_2; // 扩展字段2
|
|
string JK_ATTR_3; // 扩展字段3 //10
|
|
string JK_ATTR_4; // 扩展字段4
|
|
string JK_ATTR_5; // 扩展字段5
|
|
string JK_ATTR_6; // 扩展字段6
|
|
string JK_ATTR_7; // 扩展字段7
|
|
string JK_ATTR_8; // 扩展字段8 //15
|
|
string JK_ATTR_9; // 扩展字段9
|
|
string JK_ATTR_10; // 扩展字段10 //17
|
|
}JK_SUB_BOM_STRUCT1;
|
|
|
|
|
|
int sum1(int y,int m,int d)
|
|
{
|
|
unsigned char x[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
|
|
int i,s=0;
|
|
for(i=1;i<y;i++)
|
|
if(i%4==0 && i%100!=0 || i%400==0)
|
|
s+=366;//闰年
|
|
else
|
|
s+=365;//平年
|
|
if(y%4==0 && y%100!=0 || y%400==0)
|
|
x[2]=29;
|
|
for(i=1;i<m;i++)
|
|
s+=x[i];//整月的天数
|
|
s+=d;//日的天数
|
|
return s;//返回总天数,相对公元1年
|
|
} |