`

Debugging workflows and generating sub-workflows

 
阅读更多
source:http://wiki.sdn.sap.com/wiki/display/ABAP/Debugging+workflows+and+generating++sub-workflows

Workflow Debugging

First of all, you cannot set breakpoints in a workflow, so I assume you mean that you have set a break-point in a method used in one of the task's used in your workflow?

If so, and if this task-method is a background method (i.e. a non-dialog task), debugging is not possible, since a background method, as the name states, is executed in another context in background.

To see how the workflow passes values from/to the different container's, you can use transaction SWUD (to see if the values needed for your method, are binded correctly).

Other useful tools for workflow error search, are: SWEL (first turn on even trace with SWELS) or simply look at the workitems created to see what kind of errors they may have encountered: SWI2_FREQ f.x.

If background task, I recommend you use SWUS for the specific task in question to create a WorkItem. Find the workitem with SWI2_FREQ, then display it. From there, display Container, to see the outcome.

You can debug the method, from SWO1 for the Object Type owning the method. From SWO1 simply click the test button. Then click "create instance". Execute the method for the object instance and you will be able to debug the method.

Generating Sub Workflow

1. Add one of your subflows to the main workflow as an activity step and define the binding. This subflow is just a place-holder and will be replaced by another subflow when the workflow runs.

2. In the step definition specify "Task to be determined using an expression" and specify which container element (or expression) contains the subflow ID to be used.

At run time, the place-holder subflow will be replaced by the subflow that is specified by the expression. In other words this expression reads the table that you created to find the subworkflow to call and this subworkflow is called by the main workflow instead of the (static) place-holder subflow.

Finding out the Object Types involved

Switch the event trace ON (Tcode SWELS), carry out your transaction and view the event log (Tcode SWEL).
If there is a standard event then the trace will tell you the name of the object and the event raised.
Otherwise create your own object and events and trigger it (them) using FM "SWE_EVENT_CREATE", or use Tcode SWUE.
分享到:
评论

相关推荐

    Memory-and-C++-debugging-at-EA-2015.zip

    这个压缩包包含了一个名为"Memory-and-C++-debugging-at-EA-2015.pptx"的PPT文件,很可能是一个演讲或者培训材料,详细阐述了在大型项目中如何有效处理C++的内存问题以及进行高效调试。 在C++编程中,内存管理是...

    Memory-and-C++-debugging-at-EA-2015.pptx

    在电子艺界(EA)的2015年内存与C++调试技术演讲中,Scott Wardle探讨了游戏开发中的内存管理和调试工具的历史演变。他强调了如何通过可视化和绘图来解决问题,尤其是在自己患有阅读障碍的情况下。...

    Advanced.Apple.Debugging.&.Reverse.Engineering.v2.0 Code Part2

    In Advanced Apple Debugging and Reverse Engineering, you’ll come to realize debugging is an enjoyable process to help you better understand software. Not only will you learn to find bugs faster, but...

    Unity-debugging-5.x.zip

    "Unity-debugging-5.x.zip"这个压缩包可能包含了一组针对Unity 5.x版本的调试工具和资源,特别是针对"dnspy"的mono.dll文件。 dnspy是一款开源的.NET反编译器和调试器,它允许开发者查看、编辑、调试和分析.NET程序...

    TA-JS-debugging-and-tools-TJaaag

    "TA-JS-debugging-and-tools-TJaaag"这个主题正是针对这一需求,探讨JavaScript的调试技术和相关工具。 首先,我们要理解JavaScript的错误类型。JavaScript有七种内置错误类型:TypeError、RangeError、...

    Unity-debugging-2017.x.zip

    "Unity-debugging-2017.x.zip" 这个压缩包显然是针对Unity 2017版本的一个调试工具集合,特别提到了"dnspy"和"mono.dll",这两个在Unity开发中扮演着关键角色。 dnSpy是一款开源的.NET反编译器和调试器,特别适合...

    Debugging-with-GDB-带书签

    "Process Record and Replay"特性允许记录程序的执行过程并回放,这对于分析复杂问题非常有用。"Stack"章节讲解了如何检查调用栈,这对于理解函数调用关系和异常处理很有帮助。"Source"部分介绍了查看源代码的功能,...

    Linux Debugging and Performance Tuning (Prentice, 2005)

    Linux Debugging and Performance Tuning (Prentice, 2005)

    Debugging-a-Linux-Application.rar_SOC_montavista

    本文将基于“Debugging a Linux Application with MontaVista 5.0”这一主题,详细阐述如何在MontaVista Linux 5.0环境下对TI达芬奇SOC处理器上的应用进行调试。 首先,理解调试的基础概念是必不可少的。调试是一种...

    Course--Debugging-and-Fixing-Common-JavaScript-Errors

    课程-调试和修复常见JavaScript错误 调试JavaScript 常见JavaScript怪癖 问题: ' :smiling_face_with_smiling_eyes: '.length答案:A2 说明:String.prototype.length返回字节数,而不是字符数。...

    debugging-project-week-1:该项目向我们介绍了JS脚本-检查,探索脚本并为其进行UI布局

    Debugging-project-week-1 实用的Starter Code练习,向我们介绍了JS脚本结构,并让我们检查,探索这些脚本并为其进行UI布局。概括关于该项目当我对此有更多了解时,将在后面显示此部分。建于我使用的用于构建项目的...

    debugging-tips-and-techniques

    "debugging-tips-and-techniques"这个主题深入探讨了如何有效地诊断和解决代码中的问题,这对于提高开发效率和确保软件质量至关重要。让我们详细了解一下JavaScript调试的一些关键点。 首先,理解JavaScript的基本...

    debugging-practice-debugging-with-pry-lab-online-web-prework

    调试如果克隆此实验室并运行测试,您会注意到一些事情:一切都坏了。 像,坏透了。 你猜怎么着? 修复它就在您身上! 请记住,该实验室不仅要查找和修复错误,还应了解如何查找这些错误是什么。...

    reading-errors-and-debugging-reading-errors-atx01-seng-ft-080921

    Ruby错误 学习目标 阅读错误消息的三个不同部分。 确定四种错误类型-名称错误,语法错误,类型错误和除法错误-并进行修复 介绍 本课将仔细研究一些常见的错误类型。 目前,可能并非所有这些错误消息都对您有意义或...

    LINUX CAMERA DEBUGGING GUIDE.pdf

    标题“LINUX CAMERA DEBUGGING GUIDE.pdf”指向的是一份专门针对Linux环境下高通摄像头调试的指导手册,它主要关注于高通平台的摄像头架构调试,这对于在该平台进行嵌入式Linux开发的工程师或爱好者来说,是非常宝贵...

    reading-errors-and-debugging-using-pry-chi01-seng-ft-120720

    用撬调试概述我们将介绍Pry(一种REPL),并讨论如何安装和使用它来调试程序。目标说明Pry是比IRB更灵活的REPL。 在计算机上安装Pry。 (已为IDE用户安装) 使用文件正文中的binding.pry调试程序。...

Global site tag (gtag.js) - Google Analytics