0

我是 Peopletools 和 Peoplecode 的新手。

我有一条 SQL 语句,我想收集输出(来自 SQL 的所有数据)并创建一个 CSV 文件。

你能提供一个示例 CSV 文件代码吗?

我需要为 App 引擎进程创建文件布局吗?在此处输入图像描述

4

1 回答 1

1

您不一定需要文件布局来创建 csv - 您只需要小心您放入 CSV 的数据,因为数据中带有逗号的任何列都会开始一个新列等。

&filename = "YourFilePath";
&newFile = GetFile(&filename, "w", "a", %FilePath_Absolute);
&newFile.WriteLine("id" | "," | "type" | "," | "streetAddress" | "," | "addressLine2" | "," | "addressLine3" | "," | "locality" | "," | "postalCode" | "," | "region" | "," | "country" | "," | "source" | "," | "requester");
&rsActiveEmp = CreateRowset(Record.RECORD_TO_PROCESS);
&rsActiveEmp.Fill("where processed = 'N'");

For &i = 1 To &rsActiveEmp.ActiveRowCount
   &emplid = &rsActiveEmp.GetRow(&i).RECORD_TO_PROCESS.EMPLID.Value;
   Local TST_PERSON:PERSON &person = create TST_PERSON:PERSON(&emplid);
   Local array of string &address = &person.getMaxEdAddress();
   &newFile.WriteLine(&person.id_ | "," | "Mailing Address" | "," | &address [1] | "," | &address [2] | "," | "" | "," | &address [4] | "," | &address [5] | "," | &address [6] | "," | &address [7] | "," | "1111111" | "," | "FictitiousPerson");
End-For;
&newFile.Close();

您需要手动编写标题行,然后遍历数据集以编写其余行。在我的示例中,TST_PERSON 是一个自定义应用程序类,我使用它来为常用的生物演示数据检索创建“人”对象。在您的情况下,您可以只使用 SqlExec 语句来收集每一行的数据。

于 2021-04-23T13:55:57.013 回答