Страница 1 из 1
Запрос имени колонки
Добавлено: 28 фев 2018, 14:35
Stasss
Всем добра!
Подскажите, плиз, как в MapBasic реализовать проверку имени колонки в открытой таблице?
Например, если в таблице есть колонка с именем А1, то делать одно, а если с именем А2, то делать другое....
Re: Запрос имени колонки
Добавлено: 28 фев 2018, 15:27
MI user
Могу предложить свою библиотечку, написанную как раз для таких случаев.
Там три функции:
Код: Выделить всё
Declare Function IsTableOpened (ByVal Name as String) As Logical
DeClare Function IsFieldExist (ByVal TableName as String, ByVal FieldName as String) As Logical
Declare Sub EnumTablesToListBox (ByVal ListBoxName as integer, ByVal AllTables As logical)
1-я проверяет, открыта ли таблица с указанным именем
2-я - имеется ли поле с нужным именем в таблице
3-я выводит список всех открытых векторных таблиц в в контрол
Вам, судя по всему, нужна вторая функция.
Файл прилагается.
Re: Запрос имени колонки
Добавлено: 28 фев 2018, 17:53
Stasss
MI user писал(а): ↑28 фев 2018, 15:27Могу предложить свою библиотечку
благодарю! поразбираюсь....
Re: Запрос имени колонки
Добавлено: 02 мар 2018, 12:22
Stasss
MI user писал(а): ↑28 фев 2018, 15:27Могу предложить свою библиотечку
А вот еще вопрос: 1ая функция не реагирует на Selection (не считает это таблицей).
Это запрос, да.
Можно как-то проверить есть ли выбранные объекты на карте и присуетствует именно Selection в данный момент?
на Query(n), кстати, реагирует..
Re: Запрос имени колонки
Добавлено: 02 мар 2018, 12:32
MI user
Stasss писал(а): ↑02 мар 2018, 12:22Можно как-то проверить есть ли выбранные объекты на карте и присуетствует именно Selection в данный момент?
Это совсем просто.
Используйте функцию SelectionInfo().
Например, так:
Код: Выделить всё
If SelectionInfo(SEL_INFO_NROWS) = 0 Then
Note "Необходимо выделить объект(ы)"
End If
Re: Запрос имени колонки
Добавлено: 02 мар 2018, 12:43
Stasss
спасибо!