Centura Gupta Team Разработчик Возможность автоматизации

Есть ли инструмент автоматизации, который может автоматизировать сборку программного обеспечения на Team Developer (v6.0).

Я пытался с несколькими инструментами автоматизации, чтобы шпионить объект таблицы в приложении, он идентифицирует его как Gupta ChildTable. Но я не могу получить значения из строки.

Например: 1. У меня есть 10 строк в таблице (сетка) с 12 столбцами. Мне нужно найти значение "AAAAA", содержащееся в первом столбце, и выбрать эту конкретную строку с помощью автоматизации. 2. У меня есть 10 строк в таблице (сетка) с 12 столбцами. Мне нужно найти значение "AAAAA", содержащееся в первом столбце, и щелкнуть конкретную ячейку в этой строке, чтобы ввести данные с помощью автоматизации.

Заранее спасибо.

3 ответа

Строки (или что-либо еще в TableWindow - даже границы ячеек, фоны, линии, заголовки строк и т. Д.) Могут рассматриваться как "Предмет" или "Объект" в TeamDeveloper . Рекомендуем вам использовать MTbl - это бесценный набор дополнительных функций, которые делают работу с таблицами на одном дыхании. Я не знаю ни одного сайта, использующего TableWindows, который не использует MTbl. С точки зрения строк, вы можете определить любую строку как Предмет или Объект и соответственно манипулировать ею. Смотрите M!Tbl (расширение TableWindows) и, в частности, fcMTblItem.DefineAsRow( hWndTbl, nRow).

Кстати, вы также можете использовать MTbl, чтобы полностью изменить внешний вид ваших TableWindows, чтобы придать им по-настоящему современный вид.

Используйте VisTblFindString. Эта функция (и многие другие) включены в ваш код TD, если вы включаете VT.apl в ваши библиотеки включения. VisTblFindString вернет строку - так что вы просто устанавливаете контекст для этой строки, используя SalTblSetContext(hWndForm, nRow), и затем вы можете обратиться к содержимому каждой ячейки по имени, чтобы вернуть значение.

Синтаксис

nRow = VisTblFindString(hWndTable, nStartRow, hWndColumn, sString)

Ручка: hWndTable

Номер: nStartRow

Number: hWndColumn

Строка: sString

Описание

Находит строковое значение в столбце.

Строка должна точно соответствовать, но регистр игнорируется. Поиск заканчивается, когда проверяется последняя строка в таблице. Сообщение SAM_FetchRow отправляется для всех строк, которые еще не были извлечены в кэш.

Вы можете использовать символы сопоставления с образцом, понятные функции SalStrScan. Символ процента (%) соответствует любому набору символов. Символ подчеркивания ( _) соответствует любому отдельному символу.

параметры

дескриптор окна таблицы hWndTable.

nStartRow Номер строки, с которой начинается поиск.

hWndColumn Дескриптор столбца для поиска. Используйте hWndNULL для поиска всех строковых столбцов.

sString Строка для поиска.

Возвращаемое значение

Number: номер строки, если sString найден, или -1, если не найден.

Пример: Set nRow = VisTblFindString (twOrders, 0, colDesc, 'AAAAAA'). Вызов SalTblSetContext( twOrders, nRow) (теперь вы можете получить значение любой ячейки в nRow, ссылаясь на имя столбца),например, Set sCellValue = twOrders.col или установите sCellValue = twOrders.colId и т. д.

Очень грубый код салфетки, нет TD на этом компьютере. Нельзя сказать, что вы все равно можете легко скопировать и вставить это из-за структуры кода, только построчно.

tbl1 - это имя таблицы, col1 - это имя столбца, которое должно соответствовать вашей программе.

Set nRow = TBL_MinRow
While SalTblFindNextRow( tbl1, nRow, 0, 0 )
   Call SalTblSetContext( tbl1, nRow )
   If tbl1.col1 = "AAAAA"
      Call SalTblSetFocusCell( tbl1, nRow, tbl1.col1, 0, -1 )
      Break

Это должно пройти через каждую строку, проверить, имеет ли col1 выбранное значение, а затем активировать режим редактирования для этой ячейки - при условии, что столбец редактируемый.

Другие вопросы по тегам