水晶报告:字符“。”在域字符串错误

时间:2010-08-31 23:01:42

标签: crystal-reports

我的目标是通过计算域名中的句点数来辨别域是否具有子域。如果它有2个周期,那么显然有一个子域。 我有以下用水晶语法

编写的水晶报告公式
local numbervar count :=0;
Local numbervar strLen := length({?domain});
local stringvar c := {?domain};
local numbervar i; 
local numbervar pos2 :=0; 
for i:=1 to strLen do
(    if Mid({?domain}, i, 1) = "." then
     (
        count := count + 1; 
        if count = 2 then (
            pos2 := i
        );

       ); 
);
if count > 1 then 
left({?domain}, pos2)
else 
left({?domain},instr({?domain}, ".")-1)

任何想法?希望这是我疲惫的眼睛只是上釉的东西。

更新:这是发生的奇怪事情。 如果我添加“+ totext(pos2)

if count > 1 then 
    left({?domain}, pos2) + totext(pos2)
    else 
    left({?domain},instr({?domain}, ".")-1)

正确输出.do删除

的subdomain.domain

如果我在没有totext(pos2)

的情况下运行它
if count > 1 then 
    left({?domain}, pos2)
    else 
    left({?domain},instr({?domain}, ".")-1)

它只显示subdomain.domain.com的子域部分 有什么想法吗?

1 个答案:

答案 0 :(得分:0)

最后一行是否应该有最终;

或者,您是否考虑过制作整个公式:

Left({?domain},InStrRev({?domain}, ".")-1)