【问题标题】:Declaring And Calling Methods in Blue Prism Global Code Stage在 Blue Prism 全局代码阶段声明和调用方法
【发布时间】:2019-11-25 16:11:35
【问题描述】:

我是一名 Blue Prism RPA 开发人员,我想在我的全局代码中创建方法并从其他代码阶段调用它们。在全球代码信息页面中,声明可以这样做,但我找不到关于该主题的令人满意的资源。 任何人都可以分享一个语法规则集,也许是一个示例全局代码和代码阶段代码片段或指导我的方向吗? 我使用 C#,非常感谢 C# 中的响应

注意:我不是开发人员背景,我有基本的编码知识,但我并不完全了解 OOP 主题(即:类、方法、构造函数、继承等)

我尝试声明一个类和一个方法,它有效,我可以调用该方法,但是当我尝试添加新方法和/或类时它失败了,它没有与整体代码一起编译

【问题讨论】:

    标签: c# oop methods blueprism


    【解决方案1】:

    如果我正确理解您的问题,您正在寻找包含一个或多个方法的类的示例,您可以将其放入 BP 对象初始化页面的全局代码阶段,然后能够创建/从该 BP 对象中的其他页面调用代码阶段中该类/方法的实例。

    我不知道你知道多少,所以我假设每个步骤都需要解释。

    由于您使用的是 C#,因此您的第一站应该是“代码选项”选项卡。在这里,您应该在顶部窗格中引用您打算使用的任何库 (.dll),并在底部窗格中引用它们各自的命名空间。 BP 已经包含了一些基本的,如下所示。将语言选择更改为 C#(左下下拉)也非常重要,因为 Visual Basic 似乎是默认选项:

    接下来,这是一个简单的具体类的示例,其中包含一些字段、一个构造函数、一个属性和一个方法。您可以按原样将此代码放在“全局代码”窗口中:

    public class SomePerson
    {
        //Class variables
        private string _firstName;
        private string _lastName;
    
        //Constructor
        public SomePerson(string firstName, string lastName)
        {
            this._firstName = firstName;
            this._lastName = lastName;
        }
    
        //Property
        public string FullName
        {
            get
            {
                return string.Format("{0} {1}", this._firstName, this._lastName);
            }
        }
    
        //Method
        public string Hello()
        {
            string myText = "Hello "+FullName+", it is nice to meet you.";
            return myText;
        }
    }
    

    现在您将能够从代码阶段内部调用此类的实例并使用属性和方法。例如,您可以在 BP 中的几个数据项中提供 FirstName 和 LastName,然后使用 SomePerson 类属性的实例通过以下代码获取 FullName:

    SomePerson Anyone = new SomePerson(firstName, lastName);
    fullName = Anyone.FullName;
    

    同样,你可以使用如下方法:

    SomePerson Anyone = new SomePerson(firstName, lastName);
    result = Anyone.Hello();
    

    您可以使用这样的布局尝试所有这些:

    基本上......就是这样!通过这种方式,您可以根据需要创建任意数量的类(具体或抽象)和接口,只需将它们堆叠在 Global Code 窗格中,就像您使用这个一样。

    最后,请确保您了解大多数 VBO(如 Excel)是用 Visual Basic 编写的,因此切掉的东西不会与 C# 代码一起编译;您必须使用其中一种。是的,它们都是 .NET 语言,但是一旦您选择了 BP 对象语言,您就必须使用该语言编写代码。

    【讨论】:

    • 非常感谢!效果很好,谢谢你的详细解释。现在我需要更详细地了解 OOP 主题,以便在我的项目中使用它。
    【解决方案2】:

    具有全局代码的 VBO 的一个很好的例子是 MS Excel VBO。它包含几个函数和方法。

    Protected Function GetWorksheet(Handle As Integer, _
        WorkbookName As String, _
        WorksheetName As String) As Object
        Return GetWorksheet(Handle,WorkbookName,WorksheetName,True)
    End Function
    

    Protected Sub CloseInstance(Handle As Integer, SaveWorkbooks As Boolean)
    ...
    End Sub
    

    并且该代码可以稍后在代码阶段中使用

    Dim ws as Object = GetWorksheet(handle, workbookname, worksheetname)
    CloseInstance(handle, savechanges)
    

    此外,每个代码阶段实际上都是一个方法,您可以从其他代码阶段调用它。

    例如,如果我们在 MS Excel VBO 中有一个名为“创建实例”的代码阶段,它不包含输入,只有一个输出(整数),那么我们可以使用以下代码调用它:

    Create_Instance(out)
    

    这也是代码阶段名称必须唯一的原因。

    【讨论】:

    • 您好!感谢您的回复。坦率地说,我之前研究过 MS Excel VBO,我发现它对我来说过于复杂。我希望有一个关于 C# 的更简单的资源让我掌握基础知识。顺便说一句,我不知道你可以从另一个代码阶段调用一个代码阶段,非常感谢。
    • @Barixthenix:下面有我的回答,希望对您有所帮助。为了将来参考,下次请在您的问题中附上您迄今为止使用的任何代码和 BP 方法。此外,请尝试将您的问题缩小到与该代码/方法相关的具体问题,否则您可能会在本网站上根本得不到答案。
    • @Badda_Bing 我使用了准确的代码和数据项并且工作完美!太糟糕了,我不能投票赞成你和安杰的回复,因为我是新手
    猜你喜欢
    • 1970-01-01
    • 2019-12-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-19
    • 2011-11-01
    • 1970-01-01
    相关资源
    最近更新 更多