7.7 Проблема с ЖурналомЗарплата

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем XXL, 23 янв 2007.

Статус темы:
Закрыта.
  1. TopicStarter Overlay
    XXL
    Offline

    XXL Опытный в 1С Команда форума

    Регистрация:
    22 янв 2007
    Сообщения:
    1.159
    Симпатии:
    19
    Баллы:
    29
    Помогите пожалуйста!
    Мне надо из одной базы в другую загрузить данные (из журнала зарплат в журнал заплат). делаю и через *.txt и *.dbf, выгружается нормально, а вот с загрузкой проблемы - списала из книги!!! следующий код:
    //***************
    ЖЗ.Новая();
    ЖЗ.УстановитьРеквизит("Документ", "");
    ЖЗ.УстановитьРеквизит("РодительскийДокумент", "");
    ЖЗ.УстановитьРеквизит("Объект", Сотр);
    ЖЗ.УстановитьРеквизит("ВидРасч",ВидР);
    ЖЗ.УстановитьРеквизит("ДатаНачала", НДата);
    ЖЗ.УстановитьРеквизит("ДатаОкончания", КДата);
    ЖЗ.УстановитьРеквизит("Дни", Д);
    ЖЗ.УстановитьРеквизит("Часы", Ч);
    ЖЗ.УстановитьРеквизит("Рассчитана", 1);
    ЖЗ.УстановитьРеквизит("Результат", НачС);
    ЖЗ.Записать();
    ЖЗ.ФиксироватьЗапись();
    //***************
    при выполнении пишет:
    ЖЗ.Записать();
    {D:\1С\ВЫГРУЗКА\EXTFORMS\ЗАГРУЗКА2.ERT(120)}: Не все обязательные реквизиты установлены при вводе новой записи журнала расчетов
    Подскажите, что неправильно делаю???
  2. ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Сто лет назад программировал на расчете, но вроде бы записи в журнал расчетов вводятся только из модуля документа, у самого документа должа стоять галочка "Расчет", а если и можно через обработку, может значение реквизита "Документ" - обязательно, т.е. не может быть пустым. :unsure:
  3. TopicStarter Overlay
    XXL
    Offline

    XXL Опытный в 1С Команда форума

    Регистрация:
    22 янв 2007
    Сообщения:
    1.159
    Симпатии:
    19
    Баллы:
    29
    списывала программу целиком из книги, в ней заводила новый документ:
    //***************
    Док = СоздатьОбъект("Документ.БольничныйЛист");
    Док.НайтиПоНомеру(1, '19.01.07');
    Если Док.Выбран() = 0 Тогда
    Предупреждение("Создается документ", 2);
    Док.Новый();
    Док.НомерДок = 1;
    Док.ДатаДок = ТекущаяДата();
    Док.Записать();
    Док.Провести();
    КонецЕсли;
    ТДок = Док.ТекущийДокумент();
    ...
    ЖЗ.Новая();
    ЖЗ.УстановитьРеквизит("Документ", ТДок);
    ЖЗ.УстановитьРеквизит("РодительскийДокумент", ТДок);
    ЖЗ.УстановитьРеквизит("Объект", Сотр);
    ЖЗ.УстановитьРеквизит("ВидРасч", ВидРасчета.ОплатаБЛЗаСчетРаботодателя);
    ЖЗ.Установитьреквизит("ДатаНачала", НТП);
    ЖЗ.УстановитьРеквизит("ДатаОкончания", НТП);
    ЖЗ.УстановитьРеквизит("Рассчитана", 1);
    ЖЗ.УстановитьРеквизит("Результат", НачС);
    ЖЗ.Записать();
    ЖЗ.ФиксироватьЗапись();
    //**************
    только в книге сальдо вводится, а так один к одному. Непомогает :unsure:
  4. ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Ты не поняла, сам код ЖЗ.Новая() и т.д. должен находиться в модуле документа.
    sory, забыл, из обработки скорее всего нельзя ввести запись в ЖР.
  5. TopicStarter Overlay
    XXL
    Offline

    XXL Опытный в 1С Команда форума

    Регистрация:
    22 янв 2007
    Сообщения:
    1.159
    Симпатии:
    19
    Баллы:
    29
    В том то и дело что вроде как можно. Только секрет какой-то. Я ж из книги взяла, там обработка написана и типа должно работать
  6. ЧКДзержинский
    Offline

    ЧКДзержинский Опытный в 1С

    Регистрация:
    7 дек 2006
    Сообщения:
    487
    Симпатии:
    3
    Баллы:
    29
    Только что набросал твой код, только свои реквизиты подставил: Выб и Выб2 - элементы диалога типа Справочник.Сотрудники и Документа.НачислениеЗаработнойПлаты, так вот у меня получилось, проверь значения которые ты пытаешься внести либо в отладчике, либо просто в тупую выведи их в окне сообщений.
    Мой код:
    ЖЗ=СоздатьОбъект("ЖурналРасчетов.Зарплата");

    ЖЗ.Новая();
    ЖЗ.УстановитьРеквизит("Документ", Выб2);
    ЖЗ.УстановитьРеквизит("РодительскийДокумент", Выб2);
    ЖЗ.УстановитьРеквизит("Объект", Выб);
    ЖЗ.УстановитьРеквизит("ВидРасч", ВидРасчета.ОплатаБЛЗаСчетРаботодателя);
    ЖЗ.Установитьреквизит("ДатаНачала", '01.12.2006');
    ЖЗ.УстановитьРеквизит("ДатаОкончания", '31.12.2006');
    ЖЗ.УстановитьРеквизит("Рассчитана", 1);
    ЖЗ.УстановитьРеквизит("Результат", 777);
    ЖЗ.Записать();
    ЖЗ.ФиксироватьЗапись();
  7. TopicStarter Overlay
    XXL
    Offline

    XXL Опытный в 1С Команда форума

    Регистрация:
    22 янв 2007
    Сообщения:
    1.159
    Симпатии:
    19
    Баллы:
    29
    Все таки интересно работает 1С, который раз замечаю. накидала тоже как и ты сокращенную програмку - работает B) ничего не понимаю :unsure:
    Буду теперь пробовать там где недо. спасибо за помощь :D
Статус темы:
Закрыта.

Поделиться этой страницей