代码之家  ›  专栏  ›  技术社区  ›  György Andrasek

你将如何开始自动化我的工作?

  •  14
  • György Andrasek  · 技术社区  · 14 年前

    在我的新工作中,我们卖进口的东西。为了能够销售上述产品,目前每批来货都需要发生以下情况:

    • 发票以电子邮件附件的形式送达,Excel电子表格
    • Monkey打开发票,复制将三列中的相关部分粘贴到电子表格模板的相关部分中,在该模板中会发生非常复杂的计算,例如 =B2*550
    • Monkey将这个新的电子表格发送给boss(如果幸运,请发送电子邮件,否则发送打印机),boss负责设置零售价。
    • Monkey打开回复,然后使用一个在很多级别上都不可用的客户端程序将数据输入到生产数据库中,这甚至不值得详细说明。
    • 猴子启动超级终端,输入“at”,断开连接
    • Monkey使用可怕的客户端程序的另一部分,一次一个,向客户发送文本消息和电子邮件。

    我想换衣服 Monkey 尽可能从我自己到软件。我以前从未写过任何与电子邮件、Excel、数据库或短信息接口的东西,但如果它能帮我 .

    这是我未受教育的愿望清单:

    • 猴子问雷鸟(也许是邮件服务器?)对于附件
    • Monkey告诉Excel将电子表格转储到一个更合法的友好格式,比如csv或其他什么格式。
    • monkey解析输出,进行复杂的计算
    • Monkey用一个web表单向老板发送一个链接,在那里他可以设置价格。
    • monkey连接到数据库,插入数据
    • 猴子垃圾邮件客户

    所有这些都可行吗?如果是,我从哪里开始阅读?你将如何改进它?您认为哪种语言/框架最适合这样做?你对老板怎么办?

    5 回复  |  直到 14 年前
        1
  •  6
  •   Jay Bazuzi Buck Hodges    14 年前

    这里有很多可以应用的工具,包括python、excel宏、vb脚本等。

    在这种情况下, 动力壳 似乎是一个很好的选择,因为它自然地结合了对office,.net和脚本的COM访问,并且在所有方面都很棒。如果你已经知道一种合适的技术,你就可以用你所知道的最快的速度完成工作。Othewise,PowerShell。

    (C 4.0也是合理的,尽管早期版本在与Office的COM接口交互时很糟糕。)

    不要一下子就把整个问题解决掉。从选择 小的 简单的一部分,让你马上得到很多价值。这样你更有可能成功。(要让你的老板同意,你需要迅速取得成功。如果你不告诉你的老板,你就需要更快的成功!)一旦你完成了这项工作,你就可以利用你新找到的空闲时间(也许每天只有几分钟)把你的工具和技能扩展到下一口大小的工件上。成功会加速成功。

    到时候,你会用代码代替猴子,要么升职,要么厌恶地辞职,得到一份更好的工作。

        2
  •  2
  •   Ignacio Vazquez-Abrams    14 年前

    主要部分是Excel和电子邮件。Excel可以通过COM或与openoffice.org进行某种交互来处理。电子邮件,嗯,有很多方法可以做到。我选择的锤子是巨蟒,还有 pywin32 PyUNO poplib smtplib .

    老板…永远都是老板。不总是你可以做很多关于恶心的湿洁具的事情。

        3
  •  2
  •   sal    14 年前

    我先问自己以下问题

    1. 发票必须通过电子邮件来还是可以有一个用户可以输入数据的Web表单?有一种简单的方法可以将表单放在Google文档上,这样您就可以以自己设置的通用格式下载Excel格式的响应。我相信还有更好的方法。
    2. 老板是否需要创建一个新的电子表格,你能为他提供一个数据库应用程序,在那里他可以查看你的表格,输入价格,勾选“批准”,并让这一进程,把它放在生产数据库?
    3. 客户端程序的接口是否可以工作?你能给客户打个电话吗
    4. 你能把文本发送给最终用户而不是客户端应用程序吗?如果是这样的话,你能把这部分自动化吗?

    只是一些想法。

        4
  •  0
  •   DVK    14 年前

    针对1的一个解决方案是将电子邮件发送到Unix服务器(而不是Exchange),并使用procmail转储附件(请参见 http://gimpel.ath.cx/howto_fetch_proc_metamail.html 例如)

    至于老板,有一个不错的网页,你可以给他发一个链接。给他发一封简短的电子邮件(3行或更少),告诉他使用该页面可以在一个月内节省30分钟的工作时间,而你一个月内可以节省2小时的工作时间。准备好备份。

    但是,很高的水平,你不准备在自己的时间里完成整个自动化工作,你最好能向你的老板推销X6个月的总时间节省比开发这个的时间要少。原因可能是 monkey 他眼中的薪水足够低,以至于软件的成本根本不值得——可悲的是,他可能是对的,这取决于防弹健壮的解决方案有多复杂。

        5
  •  0
  •   msw    14 年前

    正如我上面提到的,你最后的问题可能是最突出的。这可能是最好的个人接触方式 skunkwork project 如果你有一天向老板展示一个完成的产品,收集你的创新奖金,然后被解雇,因为一只愚蠢的猴子现在可以代替你完成你的工作了。