CRM常用功能代码


前言

学习情况总结


学习任务

一、常用框架

BS入口

function Service_PreInvokeMethod (MethodName, Inputs, Outputs)
{
	if(MethodName == "GetActivity")
	{
		//同步产品评估到资产
		GetActivity(Inputs,Outputs);
		return (CancelOperation);  //InvokeMethod没有这句,客制化方法返回CancelOperation,标准方法返回ContinueOperation
	}
	
	return (ContinueOperation);//InvokeMethod没有这句
}

方法体

/*
 * Function: 同步评估数据
 * @Para : 
 * @Return: 
 * Author:DINGWJ
 * Created: 11/1/2022
 * Last Updated By:
 * Last Updated: 
 * Version: 1.0
 */
function SyncAssess(Inputs,Outputs)
{
	try
	{
		var boAsset = TheApplication().GetBusObject("Asset Management");//资产bo
		var bcAsset = boAsset.GetBusComp("Asset Mgmt - Asset");//资产子bc
		var sAssetId = Inputs.GetProperty("sAssetId");//资产id
		var ProId = "" ;//产品id Product Id
		//写入活动
		with(bcCheckItem)
		{	
			InvokeMethod("SetAdminMode", "TRUE");//开始管理员模式
			ActivateField("Activity Id");//激活父ID
			ActivateField("NGC Case Type");
			ActivateField("NGC Check Requirement");
			ActivateField("NGC Check Result");
			//写数据
			NewRecord(NewAfter);
			var bcPickList = GetPicklistBusComp("NGC Check Requirement");
			with (bcPickList)
			{	ActivateField("Value");
				SetViewMode (AllView);
				ClearToQuery();
				SetSearchExpr("[X Jcyq] = '" +sJcyq+ "' AND [X Anjlx] = '"+sAjlx+ "'");
				ExecuteQuery(ForwardOnly);
				if (FirstRecord())
				{
					Pick();
				}
			}
			SetFieldValue("Activity Id",actId);
			SetFieldValue("NGC Check Result",sCheckAns);
			WriteRecord();					
			
			InvokeMethod("SetAdminMode", "FALSE");//结束管理员模式
		}
}
		
	}
	catch(e)
	{
		throw e.message;
	}
	finally
	{
		bcPickList=null;
		boAsset = null;
	
	}
}
		var psIn = TheApplication().NewPropertySet();
		var psOut = TheApplication().NewPropertySet();
		var bsAttach = TheApplication().GetService("NGC FD Attachment Service");
		var bsPublicJBS = TheApplication().GetService("NGC Public JBS");
		psIn.SetProperty("FileId",FileId);
		bsAttach.InvokeMethod("GetAttachPath",psIn,psOut);

二、常用功能

1.动态Pick

代码如下(示例):

					//写数据
var bcPickList = GetPicklistBusComp("NGC Check Requirement");//字段名称
with (bcPickList)
{	ActivateField("Value");
	SetViewMode (AllView);
	ClearToQuery();
	SetSearchExpr("[X Jcyq] = '" +sJcyq+ "' AND [X Anjlx] = '"+sAjlx+ "'");
	ExecuteQuery(ForwardOnly);
	if (FirstRecord())
	{
		Pick();
	}
}
SetFieldValue("Activity Id",actId);
SetFieldValue("NGC Check Result",sCheckAns);
WriteRecord();	//写数据最后一定要记得保存

2.简单查询

代码如下(示例):

//获取活动ID,以找到对应的活动记录
with(bcAct)
{
	ActivateField("Parent Activity Id");//激活父ID
	ActivateField("Id");//激活ID
	SetViewMode(AllView);
	ClearToQuery();
	SetSearchExpr("[Parent Activity Id] = '" + sId + "'");
	ExecuteQuery(ForwardOnly);
	var sRecord = FirstRecord();
	while(sRecord)
	{
		var actId = GetFieldValue("Id");
		SetFieldValue("Instruction Type",sInsType);
		WriteRecord();
		sRecord = NextRecord();
	}
}
		

3.通过值列表Code获取值;获取系统参数、模板;内置参数

参数解释:LookupValue固定值,STATE_ABBREV是LOV_TYPE值列表名,Code是传入的Code

sProvince = TheApplication().InvokeMethod("LookupValue","STATE_ABBREV",Code);
var sTemplate = TheApplication().GetService("NGC System Service").GettxtTmpl("NGCFDTSTNKJTM"); //取文件模板
var sSystem=TheApplication().GetService("NGC System Service").GetParameters("OPERATING_SYSTEM");//取系统参数 	
var sLogin = TheApplication().GetProfileAttr("Login Name");					//用户编号
var sLastName = TheApplication().GetProfileAttr("Last Name");				//用户名称
			

4.开关管理员模式

InvokeMethod("SetAdminMode", "TRUE");//开始管理员模式
InvokeMethod("SetAdminMode", "FALSE");//结束管理员模式

该处使用的url网络请求的数据。

遇到问题及其解决方案

  1. 一个出站接口添加字段示例
    先在代码中找调用的服务,然后去BS中搜服务,看arg参数,找到入参/出参的IO名称,在IO中搜此参数,添加或者修改IO中的变量
  2. 本地调试MDM接口示例

心得总结

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CRM系统界面需求 CRM系统建立目的:通过CRM系统,可以按地域分布分析、指定客户消费情况分析、数量分析、机会分析、销售配额与预测等统计分析,更正确、直观、全面的理解客户的行为、期望、需要、历史、和与公司全面的关系。 此次需求目的:整合公司现在数据库,达到资料共享,合理分配使用,最大化实现系统功能。 界面要求效果:简洁、实用、操作简便。 登陆设置: 1、 设置用户名、密码,每次登陆系统均需录入用户名及密码方可登陆。 2、 用户可以自行修改密码,系统会即时识别并确认最新密码,同时有更改时间记录。 系统首页功能: 1、 要求将公司所有系统显示在首页上,以置顶方式,点击即可进入该专项系统。 2、 对各专项系统权限分配,如未授权,系统则跳出相应的提示。 3、 各专项系统均以独立界面的翻页显示,达到简洁、美观的效果。 4、 有日历显示。 功能: 1、 将目前正在开发的系统,如MMA、CCA、XXG等系统,除按提交部门的需求外,需预留更大的空间,以便以后使用过程,需增加其他功能。 2、 系统资料须与MIS即时交换信息,并随时可以调用MIS系统客户信息; 3、 在客户标识方面,留出空间标识身份,如:ES、CSL、FACILE等; 4、 导出功能增加“阶段”导出条件; 5、 自定义项目:可以在后台增加、删除、修改等后台管理权限。 6、 可以融合各个专项系统的数据,作横向数据统计分析。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值