Epicor ERP 10.2.500最近发布,增加了Epicor功能。它们可以从方法和数据指令中调用。
有没有人能够在Epicor中通过表单定制做到这一点?
发布于 2020-06-19 01:17:21
这可以通过对函数API的REST调用来实现。在本例中,我有一个从一些输入发送电子邮件的函数。
private void epiButtonC1_Click(object sender, System.EventArgs args)
{
//API Key is included in the query param in this example.
var request = (HttpWebRequest)WebRequest.Create("https://{appserver}/{EpicorInstance}/api/v2/efx/{CompanyID}/{LibraryID}/{functionName}/?api-key={yourAPIKey}");
request.Method = "POST";
//All REST v2 requests also sent with authentication method (Token, Basic)
//This should be Base64 encoded
string username = "userName";
string password = "passWord";
string encoded = System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(username + ":" + password));
request.Headers.Add("Authorization", "Basic " + encoded);
//Add body to correspond to request signature
request.ContentType = "application/json";
using(var writer = new StreamWriter(request.GetRequestStream()))
{
var values = new Dictionary<string, string>;
{
{"toEmailAddress", "someEmail@email.com"},
{"fromEmailAddress","someOtherEmail@email.com"},
{"body","This is the body"},
{"subject","Hello from Client Code!"}
};
string json = JsonConvert.SerializeObject(values);
writer.Write(json);
}
using (var response = request.GetResponse())
using (var reader = new StreamReader(response.GetResponseStream()))
{
var result = reader.ReadToEnd();
epiTextBoxC1.Text = result.ToString();
}
}发布于 2019-11-21 02:11:28
我没有亲自做过,但是查看第一个关于它的发布后说明,here让我相信在这个版本/初始版本中还没有现成的解决方案。
但是,如果您的环境中启用了REST API,我相信您可以从Epicor定制中发出HTTP请求。
发布于 2019-12-05 23:46:54
如果您创建了自己的调用EpicorFunction的dll,则可以在自定义中使用它。还在寻找一种直接呼叫他们的方法。
https://stackoverflow.com/questions/58858546
复制相似问题