首页 > 解决方案 > Workday 与 php 和 linux 端点文件传递的集成

问题描述

编辑澄清

我在工作日做了什么:

我已经使用报告创建了一个 Web 服务 EIB。我可以访问主要业务对象中的所有字段。

我是如何测试的:

运行 EIB 并将输出作为“工作日附件”提供 - EIB 成功运行。

我接下来做了什么:

要将 EIB 输出到远程位置 - 我将 EIB 传递更改为 HTTP/SSL 选项。

在 Linux 机器(端点)上做了什么:

创建了一个文件夹并为其分配了 apache 用户拥有的权限 777

运行 EIB:

然后我使用上述设置运行 EIB,EIB 成功完成。我附上了一张带有结果的图片

在此处输入图像描述

问题是什么?

没有在端点中创建文件。

那么我接下来做了什么?

由于我没有在端点获得任何文档,我想获取输入并将其转储到使用 PHP 的文件中。所以我使用下面的脚本并创建了一个名为 capture.php 的页面来捕获输入。

<?PHP
$tempfilename = "workday.wd";
$tempdata = json_decode(file_get_contents('php://input'), true);
try{
        $myfile = fopen("../../../tempdata/".$tempfilename, "w");
        fwrite($myfile, $tempdata);
        fclose($myfile);
    } catch (Exception $e){
        echo $e;
    }


?>

当我这样做时发生了什么?

我更新了 EIB 并再次运行它,这次 EIB 失败了。

我的问题如下:

  1. 工作日返回“成功”操作的触发器是什么?为什么它说它成功而没有成功。
  2. 下一个问题是 - 找出 Workday 输出内容的最佳方法是什么
  3. 最后一个问题是 - 如何在 PHP 中捕获输出(无论格式、对象类型等)并将其转储到文件中。

标签: phplinuxworkday-api

解决方案


好的 - 我有这个问题的官方答案。

这是工作日集成专家告诉我的 - 如果您使用出站 EIB,HTTP 传输选项存在一个已知问题。解决此问题的最佳方法是使用 WD Studio 构建集成。

我希望这对某人有所帮助。


推荐阅读