Создание простого запроса к таблице в MySQL

Создание простого запроса к таблице в MySQL

Сообщение Konstantin Cherednichenko » Вт мар 10, 2009 5:03 pm

при выполнении кода

Код: Выделить всё
var listTbl = OpenTable("select * from tmp_import");
var Item=0;

for(listTbl.MoveFirst(); !listTbl.isEOF(); listTbl.MoveNext())
{
    // ...
    Item++;
}

trace("\n Result: "+Item+"\n");


получаю ошибку:
Table 'dpadmin.tmp_import' doesn't exist

Сама таблица tmp_import находится в базе dpbase...

Подскажите пожалуйста как выполнить запрос именно к dpbase.tmp_import?
Аватара пользователя
Konstantin Cherednichenko
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: Пн мар 02, 2009 3:32 pm
Откуда: Konstantin Cherednichenko

Сообщение Konstantin Cherednichenko » Ср мар 11, 2009 2:12 pm

вопрос снят. добавил в начале ExecuteSQL("use dpbase");

Может есть другой способ?

Подскажите как вывести результат запроса в печатную форму?
browse() - неподходит. надо через DpDoc...
Аватара пользователя
Konstantin Cherednichenko
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: Пн мар 02, 2009 3:32 pm
Откуда: Konstantin Cherednichenko

Сообщение AlexL » Ср мар 11, 2009 2:23 pm

Текущая база  - это база пользователя. Там хранятся временные данные расчетов. В вашем случаи dpadmin.
Таблицы в базе с данными описываются в dpstru.xml.  И для того чтобы доступиться к таблицам описанным в dbstru нужно написать  
Код: Выделить всё
select * from ^cl_schet
 Когда парсер запроса встречает символ ^ он подставляет имя базы из dbstru.xml и запрос будит выглядеть так
Код: Выделить всё
select * from dpbase.com_cl_schet
Так что, если нужно создавать собственные таблицы в постоянной базе, описывайте их в dbstru. Прочитайте статью по созданию таблиц. Если же нужно доступиться к таблице из постоянной базы которая не описана в dbstru, воспользуйтесь функцией getPath – которая возвращает таблицу по метке. Код будит такой:

Код: Выделить всё
var listTbl = OpenTable("select * from "+getPath("all_mdb")+" tmp_import");
Аватара пользователя
AlexL
Программист
 
Сообщения: 88
Зарегистрирован: Вт сен 12, 2006 9:32 pm

Сообщение Konstantin Cherednichenko » Ср мар 11, 2009 3:30 pm

спасибо! запрос переделал. все работает.

Подскажите пожалуйста как вывести результат запроса в DpDoc?
Аватара пользователя
Konstantin Cherednichenko
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: Пн мар 02, 2009 3:32 pm
Откуда: Konstantin Cherednichenko

Сообщение AlexL » Ср мар 11, 2009 6:53 pm

Подскажите пожалуйста как вывести результат запроса в DpDoc?

Что вы имеете ввиду под DpDoc.
Если просмотреть на экране, то функция browse.
Например:
Код: Выделить всё
browse("select * from ^cl_schet")
или
Код: Выделить всё
browse("cl_schet")
или
Код: Выделить всё
var listTbl = OpenTable("select * from "+getPath("all_mdb")+" tmp_import");
browse(listTbl);
Аватара пользователя
AlexL
Программист
 
Сообщения: 88
Зарегистрирован: Вт сен 12, 2006 9:32 pm

Сообщение Konstantin Cherednichenko » Чт мар 12, 2009 9:10 am

мне надо именно вывод в печатную форму а не в browse...
Аватара пользователя
Konstantin Cherednichenko
Начинающий
Начинающий
 
Сообщения: 7
Зарегистрирован: Пн мар 02, 2009 3:32 pm
Откуда: Konstantin Cherednichenko

Сообщение Дарья » Пн мар 16, 2009 10:30 am

А можно подробнее описать Вашу задачу?
Если просто нужно напечатать, то есть печать как на экране.
Если нужно красиво вывести список, а потом распечатывать его с помощью форм печати, то прочитайте первую часть статьи Создание простого справочника
там описывается как создать список.
В переменной printLabel указывается метка шаблона для печати.
Это значит, что в папке JDebet\listPrintForms находятся папки по имени метки, в которых находятся формы печати. По редактированию форм печати можете посмотреть видеоролик Редактирование печатных форм 2008-05
Аватара пользователя
Дарья
Консультант
 
Сообщения: 1774
Зарегистрирован: Пн июл 28, 2008 9:40 am


Вернуться в Вопросы по разработке в системе

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

cron