在 BIP RTF 模板中连接带有参数的字符串

Concating String with parameter in BIP RTF template

在我的 BIP RTF 模板中,我在参数(比如 Clinic)中接收到一个字符串,在 IF 条件下,我必须将参数($Clinic)与 XML 标签(ssRohClinicFacilityName)相匹配。

现在的问题是,传入参数是一个截断的字符串,为了准确匹配,我们必须附加一个带有如下参数的字符串:

$Clinic + " Clinic"

由于报告是从 Siebel 应用程序生成的,因此 Siebel 方面对参数中要发送的字符数有限制。

为了达到上述要求,我尝试了多种选择,但 none 对我有用。

到目前为止我已经尝试过以下操作:

这是我现有的 if 条件:

<?if:( xdoxslt:format_date(ssAssignmentDate, 'yyyy-mm-dd','mm/dd/yyyy', $_XDOLOCALE, $_XDOTIMEZONE))>= (xdoxslt:format_date($StartDate, 'yyyy-mm-dd','mm/dd/yyyy', $_XDOLOCALE, $_XDOTIMEZONE)) and (xdoxslt:format_date(ssAssignmentDate, 'yyyy-mm-dd','mm/dd/yyyy', $_XDOLOCALE, $_XDOTIMEZONE))<= (xdoxslt:format_date($EndDate, 'yyyy-mm-dd','mm/dd/yyyy', $_XDOLOCALE, $_XDOTIMEZONE))?>

我的示例 RTF and XML 个文件。

我认为如果您只使用通配符进行比较,对您来说会更容易。

参考:https://blogs.oracle.com/xmlpublisher/wildcards

& https://www.quackit.com/xml/tutorial/xpath_string_functions.cfm

您可以搜索

starts-with(ssRohClinicFacilityName, $Clinic)

--新内容---

可以和if函数一起使用,也可以不使用。这是我尝试过的:

这是结果。

<?starts-with(ssRohClinicFacilityName, $Clinic)?>

有 if 条件

<?if:starts-with(ssRohClinicFacilityName, $Clinic)?> 
'MATCHED'
<?end if?>

我建议您尝试单独测试这部分,if 语句中可能存在其他错误导致输出不正确。