当前位置: 首页 > 知识库问答 >
问题:

项目建议:将ERP/SQL交易数据推送到Slack

袁单鹗
2023-03-14

我正在着手一个软件项目,我对如何着手这个项目有一点想法,但是我真的希望得到一些关于完成任务的一般提示、建议或指导。项目如下:

我的公司有一个ERP(企业资源计划)系统,用于记录所有业务活动(即创建采购订单、接收发货、创建销售订单、管理库存等)。所有这些活动都是将数据输入ERP系统,并存储在SQL Server数据库中。

我想通过短信将此活动推送到某些Slack频道。

例如,当运输部门在ERP系统中创建“收据条目”(他们在包裹中接收)时,生产团队将在其Slack通道中收到一条文本,指出“项目X已收到”。

我目前的餐巾纸草图是这样的:

对于给定的业务活动,创建一个执行SQL查询以返回最新数据项的函数。

将此存储在我自己的外部数据库中。

定期执行这些调用(也许创建一个Windows调度程序来执行一个每30分钟左右运行一次所有功能的程序??),它会将查询中的数据与上次保存在我的外部数据库中的数据进行比较。

如果同样,什么也不做。但如果它们不同:

用这个新数据替换我外部数据库中的数据,然后使用Slack API将这个新数据的消息发布到Slack。

我不太确定执行程序以检查ERP系统中新活动的机制,也不确定是否使用第二个数据库作为记住以前发送到Slack的内容的手段。任何建议将不胜感激。

谢谢!玩笑

共有2个答案

松旭
2023-03-14

您应该调查触发器和队列。您可以向 SQL Server 表添加触发器,这些触发器会在队列上删除消息,然后在队列的另一端有一个服务将消息写入 Slack API。

https://support.microsoft.com/en-us/help/555070

颜楚青
2023-03-14

Epicor ERP内置了强大的扩展系统。

我将为ReceiptEntry.Update.创建一个业务流程方法(BPM),这不会检查添加的行,而是更具体地检查已接收标志已更改为设置的位置。这将防止您在每次用户保存不完整记录时收到多个通知。

在BPM中,您可以引用外部程序集并从那里调用Slack API。

我强烈建议您避免尝试在数据库级别而不是应用程序级别执行此操作。架构可以更改,如果有人一直在向数据库中添加代码,则维护系统要困难得多。如果不小心完成,它可能会破坏Epicor管理控制台中的数据模型重新生成,并阻止您添加UD字段或升级数据库。

 类似资料:
  • 我克隆了一些库到我的android的项目,一切正常,当我完成我的工作,我试图把它推到我的回购,但它给我的问题: 计数对象:1937,完成。增量压缩最多使用8个线程。压缩对象:100%(1839/1839),完成。写入对象:100%(1937/1937),27.24mib | 5.83mib/s,完成。总计1937(增量703),重复使用0(增量0)错误:RPC失败;结果=22,HTTP代码=413

  • 等。 此数据将持续过帐以在数据报告中使用。我们想要的是在这些数据上绘制可视化。 我们想要的图表,将说的事情,如有多少400s由网站等,这是最高的网站或呼叫者有400。 对于例如,这个http状态是这个站点的,因为它是一个记录。在这种情况下,我们需要像这样的东西 我们的目标是,然后使用grafana在这个数据上有图表,因为在什么是顶级网站有显示400状态?这样可以吗?问候

  • 我是新来的反应本地人。我需要,如何推setState数组到新的数据?

  • 我想使用heroku pg:push命令将本地postgresql数据库推送到heroku。命令如下所示: 。 我的应用程序的名称是。我尝试了。输出是: 我很惊讶我没有在数据库中输入任何内容。但我仍然运行heroku pg:reset DATABASE来重置我的数据库。之后,我再次尝试了heroku pg:推送mysitedb数据库——app secure-gorge-4090,但输出仍然相同。

  • 问题内容: 初学者ES问题在这里 将Spark数据框推送到Elastic Search的工作流程或步骤是什么? 通过研究,我相信我需要使用spark.newAPIHadoopFile()方法。 但是,在研究ElasticSearch文档和其他StackQ / A时,我仍然对参数需要采用的格式以及为什么使用它感到困惑 请注意,我正在使用pyspark,这是ES的新表(尚无索引),并且df是5列(2个

  • 我正在获取库项目中Examid字符串的空值。