Hi,
I have found a “hidden ABB.Robotics.GeneralException” by console connection to controller when I try to get a RapidData that is not present in a specific system module. I need to know if this RapidData is present to do some things or if not present to do other…
If RapidData is present there aren’t “hidden exception” and “[Fp]: …” message from console.
now a piece of my code:
…
Task tasks = controller.Rapid.GetTasks();
try
{
Trace.WriteLine(string.Format(“DataController() → getting RapidData _EFdo”));
RapidData _EFdo = tasks[0].GetRapidData(“SM_CONF”, “EFDoButtons”);
//“SM_CONF” is my system module and always is present, “EFDoButtons” if present is a CONS string
if(_EFdo != null)
{
// do some things…
}
else
{
// do other things…
}
}
catch(ArgumentNullException ex) //as wrote on FP SDK about working with RapidData in “Using the FlexPendant SDK - Using the Controller API - Rapid domain”
{
Trace.Fail(string.Format("DataController() Error: → RapidData EFDoButtons is not present in SM_CONF " + ex.Message));
}
I tryed also with “ABB.Robotics.GeneralException” instead of “ArgumentNullException” in catch statement but on HyperTeminal always I can read this message from FP:
[fpsdk]: DataController() → getting RapidData _EFdo
[fp]: -------------------------------------------
We have a hidden exception:
ExceptionType: ABB.Robotics.GeneralException
Caught at GetRapidData2 in ABB.Robotics.Controllers/Rapid.cs
Message: SYS_CTRL_E_NO_SUCH_SYMBOL: RAPID symbol was not found.
Error Code: (0xc0049000)
SYS_CTRL_E_NO_SUCH_SYMBOL: RAPID symbol was not found.
ERROR: rapid.c[1954]: org_code: -1162 new_code: 0xc0049000; RobSymbolSearchImpl.
cpp[160]; AdaptRapidCommon.h[1929]; AdaptRapid.cpp[996]; ABB.Robotics.GeneralEx
ception at GetRobSymbolDynamic in Dcl.rapid/AdaptRapid.cs
at ABB.Robotics.Dcl.ExceptionHelp.GenerateExceptionBasedOnHResult(String objS
tr, String method, ReturnCodeRobAPI hRes, String info)
at ABB.Robotics.Dcl.ExceptionHelp.GenerateException(String objStr, String met
hod, ReturnCodeRobAPI hRes, ReturnCodeRobAPI expectedErrors, String lastErrorD
esc, String additionalinfo)
at ABB.Robotics.Dcl.ExceptionHelp.GenerateException(String objStr, String met
hod, ReturnCodeRobAPI hRes, ReturnCodeRobAPI expectedErrors, String lastErrorD
esc)
at ABB.Robotics.Dcl.Rapid.AdaptRapid.GetRobSymbolDynamic(Int32 rapidClient, S
tring symbolUrl, RobSymbolDynamic& symData)
at ABB.Robotics.Dcl.Rapid.Rapid.GetRobSymbolDynamic(String Url)
at ABB.Robotics.Controllers.RapidDomain.Rapid.GetRapidData2(Rapid dclRapid, S
tring blockUrl, String rapidData)
at ABB.Robotics.Controllers.RapidDomain.Task.GetRapidData(String rapidData)
at EasyFlex.DataController..ctor(EasyFlex _gui)
at EasyFlex.EasyFlex.ABB.Robotics.Tps.Taf.ITpsViewSetup.Install(Object sender
, Object data)
at ABB.Robotics.Tps.SDK.Base.SDKViewWrapper.Install(Object tafSite, Object in
itData)
at ABB.Robotics.SDK.Views.EasyFlex.Install(Object tafSite, Object initData)
at ABB.Robotics.WinCore.TPAppFwk.Runtime.TacController.SetupItem(Object& item
, Object initData)
at ABB.Robotics.WinCore.TPAppFwk.Runtime.TafMaster.CreateItem(TacLaunchInfo&
launchInfo, TacContext& context, Boolean setAsActiveCtrl, Boolean sysItem)
at ABB.Robotics.WinCore.TPAppFwk.Runtime.TafMaster.ABB.Robotics.WinCore.TPApp
Fwk.Runtime.ITafMaster.CreateItem(TacLaunchInfo& launchInfo, TacContainerContext
& containerContext)
at ABB.Robotics.WinCore.TPAppFwk.SiteServices.ABB.Robotics.WinCore.TPAppFwk.B
ase.ITafSite.LaunchTPAppControl(TacLaunchInfo& launchInfo, TacContainerContext&
containerContext)
at ABB.Robotics.Tps.Controls.TpsABBMenu.ListView_ItemActivated(Object sender,
EventArgs e)
at ABB.Robotics.Tps.Windows.Forms.ListView.OnItemActivate(EventArgs e)
at ABB.Robotics.Tps.Windows.Forms.ListView.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.Control.WnProc(WM wm, Int32 wParam, Int32 lParam)
at System.Windows.Forms.ContainerControl.WnProc(WM wm, Int32 wParam, Int32 lP
aram)
at System.Windows.Forms.Control._InternalWnProc(WM wm, Int32 wParam, Int32 lP
aram)
at Microsoft.AGL.Forms.EVL.EnterMainLoop(IntPtr hwnMain)
at System.Windows.Forms.Application.Run(Form fm)
at ABB.Robotics.WinCore.TPAppFwk.MainFrame.Start()
at ABB.Robotics.WinCore.TPAppFwk.TafApp.Start()
at ABB.Robotics.WinCore.TPAppFwk.TafApp.Main(String args)
END (at 615684)
[fpsdk]: DataController() → …
[fpsdk]: DataController() → …
[fpsdk]: DataController() → …
- Is normal this message also if my get statement is in try/catch block?? where is wrong?
- This hidden exception ban create some problems for the proper execution of the application? (yes, I’m always verify if my variabile if “null” before using it).
Regards
Emanuele