powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / SetSqlSelect=> select error: column list do not match
10 сообщений из 10, страница 1 из 1
SetSqlSelect=> select error: column list do not match
    #32894339
Фотография savosin_sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вздумалось мне на этапе выполнения программы добавить в datawindow (тип -- грид) несколько колонок и соответствующим образом модифицировать sql-запрос (а именно: добавить поле в предложение select), на котором образована datawindow (dw.object.datawindow.table.sqlselect или get/setSqlSelect)

колонку (кот. видна на экране) с необходимым оформлением добавить можно, а вот как (и можно ли) добавить колонку, кот. сооветствует запросу (columns, кот виджны первыми в edit source datawindow)

а? кто-нибудь такое вытворял? или придётся работать с datawindow.object.syntax?
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32896377
hurr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
// Что то вроде этого видимо

dw_1.Reset() // У меня без очистки изменяемого DW почемуто при закрытии окна содержащего DW падало приложение

// Изменим набор данных
ls_mod = "table(column=(type=char(15) name=devices_gos_num dbname='devices.gos_num' )
column=(type=decimal(2) name= NEW_COL_1 dbname= 'NEW_COL_1' ) )"
ls_err = dw_1.Modify(ls_mod)
....
ls_sql='SELECT "auto"."devices"."gos_num" , (....) AS NEW_COL_1 FROM "auto"."devices"'
ls_err = dw_1.Modify("DataWindow.Table.Select='"+ls_sql+"'")
...
//Создем новую колонку в Dw
ls_err = dw_1.Modify('create column(band=detail id=2.....name= NEW_COL_1 ')

dw_1.Retrieve()
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32896429
alexis glinski
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а SyntaxFromSQL не подойдёт ???
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32896871
Фотография savosin_sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 alexis glinski: не подойдёт. мне необходимо оставить форматирование и другие свойтва имеющихся столбцов (выпадающие списки, вычислимые столбцы -- то есть, всё)
2 hurr: спасибо за Reset().. вот это дааааааа, я и не знал, что можно делать Modify для table(column..) ! только сейчас я обратил внимание на объект table в разделе modify программы DWSyntax.. кстати, там в примере у колонки, которая в datawindow, авторы не используют ни name, ни dbname -- только id
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32896919
Фотография savosin_sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
жалко, что нету чего-нибудь вроде dw.Describe("Table") или dw.Describe("DataWindow.Table") -- приходится из dw.Describe("DataWindow.Syntax") выковыривать table(column(..))
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32897970
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
savosin_sergeyкстати, там в примере у колонки, которая в datawindow, авторы не используют ни name, ни dbname -- только id
К сожалению именно так. Отображаемые колонки связываются с резалтсетом не по имени, а по номеру колонки внутри резалтсета. Если меняешь порядок колонок в резалтсете - прийдется править и номера в отображаемых колонках. Painter пытается за этим следить, но не всегда получается :(
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32897986
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl savosin_sergeyкстати, там в примере у колонки, которая в datawindow, авторы не используют ни name, ни dbname -- только id
К сожалению именно так. Отображаемые колонки связываются с резалтсетом не по имени, а по номеру колонки внутри резалтсета. Если меняешь порядок колонок в резалтсете - прийдется править и номера в отображаемых колонках. Painter пытается за этим следить, но не всегда получается :(


Не к сожалению, а к счастью. Именно это позволяет иметь какие угодно имена у отображаемых колонок...
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32898052
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ФилиппНе к сожалению, а к счастью. Именно это позволяет иметь какие угодно имена у отображаемых колонок...
А что, при связи по именам отображаемые колонки ограничены в выборе имен? Возьмите любую отчетную систему. Хоть Crystal Report, да хоть даже MS Access. Есть имя объекта, есть источник данных для объекта. Почему в PB ссылка на источник сделана через номер колонки - загадка.
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32898074
Фотография Филипп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну так идите и делайте в Crystal Report, да хоть даже MS Access, там же проще всё :-)
...
Рейтинг: 0 / 0
SetSqlSelect=> select error: column list do not match
    #32898733
Фотография savosin_sergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Филипп, White Owl: так. опять начинается спор? истина уже родилась. id так id..
посмотрите лучше сюда
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / SetSqlSelect=> select error: column list do not match
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]