删除 WFFM 报告记录

Delete WFFM Report record

当我从 select 一个 WFFM 并打开表单报告并尝试删除其中一条记录时,出现以下错误:

[SqlException (0x80131904): 对象名称无效 'dbo.SplitIds'。]

这个对象是缺失的table还是存储过程?

您的安装中似乎缺少 WFFM 功能之一。您可以访问您的 WFFM SQL 数据库吗?

如果是,请在该数据库的函数文件夹中检查它:

那是你缺少的函数 dbo.SplitIds .

如果这是您的实例中唯一缺少的数据库对象,而您在其他任何地方都没有,您可以使用此脚本重新创建它。不要忘记 USE prior:

CREATE FUNCTION [dbo].[SplitIds]
(
    -- Add the parameters for the function here
    @IdValues nvarchar(max),
    @Delimiter  NVARCHAR(1) = ','
)
RETURNS 
@IDs TABLE 
(
    Id uniqueidentifier not null
)
AS
BEGIN
    DECLARE @Separator nvarchar(1)
    SET @Separator  = @Delimiter

    DECLARE @Iterator int
    SET @Iterator = 1

    DECLARE @RowData NVARCHAR(MAX)
    SET @RowData = @IdValues

    DECLARE @FoundIndex INT
    SET @FoundIndex = CHARINDEX(@Separator,@RowData)

    WHILE (@FoundIndex>0)
    BEGIN
        INSERT INTO @IDs (Id)
        SELECT          Data = dbo.Trim(SUBSTRING(@RowData, 1, @FoundIndex - 1))

        SET @RowData = SUBSTRING(@RowData, @FoundIndex + DATALENGTH(@Separator) / 2,  LEN(@RowData))

        SET @Iterator = @Iterator + 1   
        SET @FoundIndex = CHARINDEX(@Separator, @RowData)
    END

    INSERT INTO @IDs (Id)
    SELECT Data = dbo.Trim(@RowData)

    RETURN 
END

功能恢复后,请尝试再次删除您的报告。如果那是唯一缺少的功能——那会起作用,如果不起作用——那么它会告诉你还缺少什么。 希望对您有所帮助!