Vih для ДО (Счета, ДО на продажу)

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

Ответить
Ренат
Постоянный обитатель
Сообщения: 194
Зарегистрирован: 12 сен 2007, 16:34
Откуда: Глазов
Контактная информация:

Vih для ДО (Счета, ДО на продажу)

Сообщение Ренат »

Добрый день!
Есть необходимость программно создать ДО, а затем его заполнить. Со связыванием таблиц и дальнейшей вставкой почему то не получается - выскакивает ошибка "Запрещен доступ к файлу. Код ошибки 46. таблица 1102". Это таблица BaseDoc.
Дайте пожалуйста кто нибудь vih файл для работы с ДО.

Списиба.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

а вы базу не через диск копировали? и что за СУБД?. Обычно это либо права тока на чтения либо в первасиве атрибут у файла Readonly. Ну как вариант - не умеете писать лог.таблицы.
Ренат
Постоянный обитатель
Сообщения: 194
Зарегистрирован: 12 сен 2007, 16:34
Откуда: Глазов
Контактная информация:

Сообщение Ренат »

БД - Pervasive.
Насчет того что не умею писать лог таблицы, может и так.

Код: Выделить всё

//Теперь надо сделать подцепки для создания ДО
         and basedoc.cOrg      == katorg_DO_FL.Nrec
         and basedoc.cPayment  == katpayment.Nrec
         and basedoc.cGrPol    == katorg_DO_FL.Nrec
         and basedoc.cGrOtpr   == katorg_DO_FL.Nrec
//       and basedoc.cStatDoc  == StatDoc.Nrec
         and basedoc.CNOTE     == KatNotes.Nrec
         and basedoc.cNalog    == KatNalog.Nrec

Далее вставляю командой Insert

Код: Выделить всё

                //Теперь создаем ДО и открываем его для редктирования
                Set BaseDoc.Name:=parDO_Name;
                Set BaseDoc.VidDoc:=201;
                Set BaseDoc.Vhodnal:=parDO_Nalog;
                Set  basedoc.cOrg     := katorg_DO_FL.Nrec;
                Set  basedoc.cPayment := katpayment.Nrec;
                Set  basedoc.cGrPol   := katorg_DO_FL.Nrec;
                Set  basedoc.cGrOtpr  := katorg_DO_FL.Nrec;
                Set  basedoc.CNOTE     := KatNotes.Nrec;

                Message('basedoc.cOrg='+string(basedoc.cOrg));
                Insert current BaseDoc;
                message('Создан документ '+BaseDoc.);
                Runinterface('Vschet',BaseDoc.Nrec);
При попытке выполенения команды Insert вылетает ошибка.
k_vit
Постоянный обитатель
Сообщения: 143
Зарегистрирован: 09 авг 2006, 16:40
Откуда: Россия, Тюмень, ОАО "Сибирский Научно-Аналитический Центр"

Сообщение k_vit »

Подцепки для создания ДО ? :-?
Зачем?
k_vit
Постоянный обитатель
Сообщения: 143
Зарегистрирован: 09 авг 2006, 16:40
Откуда: Россия, Тюмень, ОАО "Сибирский Научно-Аналитический Центр"

Сообщение k_vit »

Как-то странно получается....
Вы связываете BaseDoc с таблицами
И тут же пытаетесь вставить в BaseDoc данные из этих таблиц
Ренат
Постоянный обитатель
Сообщения: 194
Зарегистрирован: 12 сен 2007, 16:34
Откуда: Глазов
Контактная информация:

Сообщение Ренат »

Я пытаюсь программно создать ДО
Ренат
Постоянный обитатель
Сообщения: 194
Зарегистрирован: 12 сен 2007, 16:34
Откуда: Глазов
Контактная информация:

Сообщение Ренат »

до этого у меня стоит строка
ClearBuffer(#BaseDoc);
aleks1232321
Постоянный гость
Сообщения: 86
Зарегистрирован: 28 апр 2005, 12:15
Откуда: Москва

Сообщение aleks1232321 »

Вообще всегда рекомендую использовать CLEARBUFFER(#ИМЯТАБЛИЦЫ).
Особенно в MSSQL.
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

интересна секция from. А также ответ на сообщение k_vit.
Также выбирайте - либо set, либо insert current. Есть еще конструкция
insert into basedoc set список полей - которая по скорости конкурирует с clearbuffer + insert current. CLEARBUFFER в принципе не обязательна, можно просто сбросить Nrec в 0 и заполнить другие нужные поля, но сие приведет к замедлению операции вставки как это ни странно :).
Ренат
Постоянный обитатель
Сообщения: 194
Зарегистрирован: 12 сен 2007, 16:34
Откуда: Глазов
Контактная информация:

Сообщение Ренат »

Может быть все таки мне кто нибудь дасть vih для работы с ДО ?
:?
edward_K
Заслуженный деятель интернет-сообщества
Сообщения: 5187
Зарегистрирован: 29 мар 2005, 17:49
Откуда: SPB galaxy spb

Сообщение edward_K »

а разобраться почему не пашет слабо? Так то содержимое vih можно подглядеть в exe\galdoc.
Ренат
Постоянный обитатель
Сообщения: 194
Зарегистрирован: 12 сен 2007, 16:34
Откуда: Глазов
Контактная информация:

Сообщение Ренат »

Разбираться долго. И почему то не хочеться 8-)
Алексей
Местный житель
Сообщения: 2896
Зарегистрирован: 24 июн 2005, 12:12
Откуда: Иркутская область

Сообщение Алексей »

Раз не хочется, тогда найдите того, кто разберётся :) Естественно не бесплатно...
Странный конечно подход...
Ответить