在Filemaker中,是否可以从XML导入Container字段



XML FMPXMLRESULT语法文档声明:

XML导出不支持导出容器字段数据。

这似乎意味着可以导入(它还指定可以在XML中将字段表示为类型"CONTAINER")。然而,我没有发现任何关于如何做到这一点的文档。

有可能吗?我知道有一些方法可以在事后将图像文件放入Filemaker,但我可以事先在XML中指定它吗?这样就不需要额外的脚本或对导入进行后期处理(更不用说在Filemaker 11或更低版本中工作的东西了)?

您可以导入文件引用,但不能导入二进制数据。(您必须在XML文件中将字段指定为TEXT类型。)例如:

<?xml version="1.0" encoding="UTF-8"?>
<FMPXMLRESULT xmlns="http://www.filemaker.com/fmpxmlresult">
  <ERRORCODE>0</ERRORCODE>
  <PRODUCT BUILD="01-25-2011" NAME="FileMaker" 
      VERSION="ProAdvanced 11.0v3" />
  <DATABASE DATEFORMAT="M/d/yyyy" TIMEFORMAT="h:mm:ss a" 
      LAYOUT="" NAME="" RECORDS="" />
  <METADATA>
    <FIELD EMPTYOK="YES" MAXREPEAT="1" TYPE="TEXT" NAME="Path" />
  </METADATA>
  <RESULTSET FOUND="">
    <ROW>
      <COL>
        <DATA>image:test.jpg</DATA>
      </COL>
    </ROW>
  </RESULTSET>
</FMPXMLRESULT>

路径必须为FileMaker格式;在这里,我使用了与文件位于同一目录中的test.jpg的相对路径(仅适用于本地文件),但它也可以是绝对路径,例如:

imagewin:/C:/Some/Path/test.jpg

您的最佳选择可能是导入Base64编码的数据,然后使用Base64Decode函数对其进行解码。

导入图像,最好是从http

我不知道这到底意味着什么。如果您的XML包含指向图像的链接,那么您唯一能做的就是将链接导入为文本。如果您使用的是版本12或更高版本,则可以按照此步骤执行"从URL插入"脚本步骤(对于每个导入的记录)。

最新更新