Error: Internal error in agent - Function never returned a value
#1
Отправлено 16 января 2009 - 13:16
Никак не могу понять чего не хватает Силку... Выводит сообщение об ошибке при вызове функции GetColumnName() для таблицы AxaptaTable: Table. Вроде бы все методы должны наследоваться от парента. Но ни в какую. Тоже самое и с GetRowCount ().
Если кто-то сталкивался с подобной проблемой и знает решение, плиз хэлп.
#2
Отправлено 16 января 2009 - 16:30
#3
Отправлено 17 января 2009 - 17:18
#4
Отправлено 19 января 2009 - 07:25
Да, они и вправду повторяются и в AxaptaTable. А это плохо?
Сорри по поводу этого ответа... погорячился :) Дело в том, что данный метод встречается только в классе Table, от которого собственно и наследуется класс AxaptaTable. Больше нигде нема.. за исключением пожалуй классов TreeViewEx и ListView, которые также наследуются от класса Table.
У кого то появились хоть какие-нить соображения по данной проблеме?
#5
Отправлено 19 января 2009 - 17:16
#6
Отправлено 20 января 2009 - 08:34
[] print(wndSalesOrder.SalesTable.AxPaneWnd1.PageList1.AxPaneWnd1.AxPaneWnd1.GetColumnName(2))
Объявление окна wndSalesOrder
AxaptaTable AxPaneWnd1 // Сам грид Силк определил его как CustomWinpublic winclass AxaptaTable:Table // AxaptaTable наследуется от класса Table
[ ] msw tag "{sContainer}#1"
[+] CustomWin AxComboBoxEx2 // Added on 29 May 2008 for SO Claim tab to get the text from IS status section
[ ] msw tag "#2"
[+] PopupList PopupList1
[ ] tag "#1"
[+] TextField txtGrid
[ ] tag "#1"
[+] Header Header1
[ ] tag "#1" _linenums:0'>[-] window ChildWin wndSalesOrder [ ] tag "*Sales order *" [ ] parent MBSAxapta [-] CustomWin SalesTable [ ] msw tag "[AxPaneWnd]SalesTable|{sContainer}#1" [-] CustomWin AxPaneWnd1 [ ] msw tag "{sContainer}#1" [-] PageList PageList1 [ ] tag "#1" [-] CustomWin AxPaneWnd1 [ ] msw tag "{sContainer}#1" [-] AxaptaTable AxPaneWnd1 // Сам грид Силк определил его как CustomWin [ ] msw tag "{sContainer}#1" [+] CustomWin AxComboBoxEx2 // Added on 29 May 2008 for SO Claim tab to get the text from IS status section [ ] msw tag "#2" [+] PopupList PopupList1 [ ] tag "#1" [+] TextField txtGrid [ ] tag "#1" [+] Header Header1 [ ] tag "#1"
#7
Отправлено 21 января 2009 - 12:52
(в фрейме упоминается sContainer - это точно константа, а не свойство ?)
.. еще тогда попытка уточнить : а как выглядит текст ошибки ?
т.е. пишет "ошибка Х произошла в Y, вызвана из Z и т.д."
может там есть ответ - что именно вызывается и падает ?
#8
Отправлено 21 января 2009 - 13:52
[-] Testcase SilkTestColumn - 1 error [ ] Machine: (local) [ ] Started: 03:34:50PM on 21-Jan-2009 [ ] Elapsed: 0:00:02 [ ] Totals: 1 error, 0 warnings [ ] [ ] [ ] Start Time : 03:34:50 PM [ ] [ ] *** Error: Internal error in agent - Function never returned a value [ ] Occurred in GetColumnName [ ] Called from mainSilkTestColumn at JustTesting.t(35) [ ] Called from SilkTestColumn at JustTesting.t(17)
А вот что выдал через дебаггер:
Start Time : 03:47:30 PM
*** Error: Internal error in agent - Function never returned a value
Occurred in GetColumnName
Called from mainSilkTestColumn at JustTesting.t(35)
Called from SilkTestColumn at JustTesting.t(17)
Через дебаг я дошел до defaults.inc, где он споткнулся
SetBaseState () // ТУТ
[ ] _linenums:0'>[-] DefaultTestCaseEnter () [ ] SetAppState ()[ ] [ ] //**************************************************************************[ ] [-] DefaultTestCaseExit (BOOLEAN bException) [-] if (bException) [ ] ExceptLog () [ ] [ ] SetBaseState () // ТУТ[ ]
А насчет sContainer, то это объявлено тут так:
[ ] STRING sCurrentFormName="", sDataFilePath = currentpath +'\..\DataSheets', sResultFolder, sContainer = "[AxPaneWnd]",DSN_NAME="Segue DDA Excel"
#9
Отправлено 21 января 2009 - 15:25
#10
Отправлено 21 января 2009 - 15:41
[ ] supported_ca builtin STRING GetColumnName (INTEGER iCol, BOOLEAN bRawMode optional)
#11
Отправлено 21 января 2009 - 17:28
попробуйте вот так :
в public winclass AxaptaTable:Table добавляете перегрузку этого метода примерно так
[-] STRING GetColumnName (INTEGER iCol, BOOLEAN bRawMode optional) [-] do [ ] return derived::GetColumnName (iCol, bRawMode) [-] except [-] if ExceptNum () == E_NO_RETVAL [ ] return "" // или по вкусу;) [-] else [ ] reraiseтеперь должно работать и не падать
#12
Отправлено 22 января 2009 - 08:42
Все тоже сообщение... У меня такое ощущение, что файлы не правильно подключаются. У меня класс AxaptaTable записан во файле Frame.inc, который включен во фрейм для окна .inc и в файл тесткейса .t, но видимо, чего-то не хватает. Если есть возможность можем связаться по аське или скайпу..(468234373, niko1312)
#13
Отправлено 22 января 2009 - 13:30
[-] STRING GetColumnName (INTEGER iCol, BOOLEAN bRawMode optional) [-] do [ ] return derived::GetColumnName (iCol, bRawMode) [-] except [ ] return ""
#14
Отправлено 22 января 2009 - 14:35
...
[codebox] [-] AxaptaTable AxPaneWnd1//Change for Claim CustomWin to AxaptaTable
[ ] msw tag "{sContainer}#1"
[+] TextField txtGrid
[ ] tag "#1"
[+] Header Header1
[ ] tag "#1"
[/codebox]
То есть, Header и TextField - это все элементы, которые увидил силк.. может собака тут?
#15
Отправлено 23 января 2009 - 16:54
а что, (после изменений) пишет этот код ?
[] print(wndSalesOrder.SalesTable.AxPaneWnd1.PageList1.AxPaneWnd1.AxPaneWnd1.GetColumnName(2))
#16
Отправлено 26 января 2009 - 07:13
#17
Отправлено 26 января 2009 - 14:40
а если просто написать
main () wndSalesOrder.SalesTable.AxPaneWnd1.PageList1.AxPaneWnd1.AxPaneWnd1.GetColumnName(2)Нормально выполнится ?
(Если нет - то пришлите, пожалуйста, что напишет в сообщении об ошибке)
#18
Отправлено 27 января 2009 - 11:38
[-] Testcase ReportTesting - 1 error
[ ] *** Error: Internal error in agent - Function never returned a value
[ ] Occurred in GetColumnName
[ ] Called from mainSilkTestColumn at JustTesting.t(175)
[ ] Called from ReportTesting at JustTesting.t(154)
А не может ли быть так что проблема в отсутствующих Extensions? Может для этого нужны мпециальные .dll?
#19
Отправлено 27 января 2009 - 12:45
Однако, меня сейчас больше волнует то, что эта ошибка возникает не в main() а где-то, непонятно где ...
1) что такое ReportTesting и mainSilkTestColumn ? Чем они у вас занимаются ? как выглядят строчки 154 и 175 файла JustTesting.t ?
2) перепроверьте меня :
если вызвать
main () Print ("main called!") wndSalesOrder.SalesTable.AxPaneWnd1.PageList1.AxPaneWnd1.AxPaneWnd1.GetColumnName(2), то "main called" не видно %)
(либо еще вариант - пустой main() выведет ту же самую ошибку )
#20
Отправлено 27 января 2009 - 15:44
mainSilkTestColumn - это название функции, которая и вызывается из тесткейса (ReportTesting).
Строка 175: wndSalesOrder.SalesTable.AxPaneWnd1.PageList1.AxPaneWnd1.AxPaneWnd1.GetColumnName(2)
Строка 154: [-] testcase ReportTesting() appstate none
[ ]
[ ] mainSilkTestColumn() //вот она
[ ]
При обработке такой комбинации:
[ ] Print("Main!!")
[ ] wndSalesOrder.SalesTable.AxPaneWnd1.PageList1.AxPaneWnd1.AxPaneWnd1.GetColumnName(2)
результат буде таким:
[ ] Main!!
[ ] *** Error: Internal error in agent - Function never returned a value
[ ] Occurred in GetColumnName
...
Количество пользователей, читающих эту тему: 0
0 пользователей, 0 гостей, 0 анонимных