Функция ОткрытьБазу() ДБФ = СоздатьОбъект("XBase"); Попытка ДБФ.ОткрытьФайл(Путь+ИмяФайла,,0); Исключение Предупреждение("Ошибка отрытия файла " + Путь+ИмяФайла); Возврат 0; КонецПопытки; Если ДБФ.Открыта() = 0 Тогда Предупреждение("Ошибка отрытия файла " + Путь+ИмяФайла); Возврат 0; КонецЕсли;
Возврат 1; КонецФункции
Процедура УстановитьДату(ТЭлемент)
СпрСотр2=СоздатьОбъект("Справочник.Сотрудники"); Если СпрСотр2.НайтиЭлемент(ТЭлемент)>0 Тогда СпрСотр2.ПризнакИзмененияДоходаДляИндексации.Установить(ДБФ.DatZ,1); Сообщить("Установлен признак изменения дохода."); Иначе Сообщить("Не найден элемент "+ТЭлемент); КонецЕсли;
КонецПроцедуры
Процедура Загрузить() ОткрытьБазу(); Если ОткрытьБазу()=0 Тогда Возврат; КонецЕсли;
ДБФ.КодоваяСтраница(0); Сч=0; СпрСотр=СоздатьОбъект("Справочник.Сотрудники"); СпрСотр.ИспользоватьДату(НачМесяца(ДатаВПериоде)); // Цикл по записям ДБФ базы Пока ДБФ.ВКонце()=0 Цикл
Попытка Если ФС.СуществуетФайл(Путь+"\"+ИмяФайла) = 1 Тогда ФС.УдалитьФайл(Путь+"\"+ИмяФайла); КонецЕсли; Исключение Сообщить("Невозможно перезаписать файл с предыдущей выгрузкой.","!!!"); Возврат; КонецПопытки;
ДБФ=СоздатьОбъект("XBase");
// Определяем поля ДБФ.ДобавитьПоле("Code","S", 10,); ДБФ.ДобавитьПоле("Name","S",30,);
Попытка ДБФ.СоздатьФайл(Путь+"\"+ИмяФайла); Исключение Предупреждение("Ошибка создания файла " + Путь+"\"+ИмяФайла); Возврат; КонецПопытки; Если ДБФ.Открыта() = 0 Тогда Предупреждение("Ошибка открытия файла " + Путь+"\"+ИмяФайла); Возврат; КонецЕсли;
Сч=0; СпрСотры=СоздатьОбъект("Справочник.Сотрудники"); //ДБФ.КодоваяСтраница(0); СпрСотры.ИспользоватьДату(ДатаВыборки); СпрСотры.ВыбратьЭлементы(); Пока СпрСотры.ПолучитьЭлемент() > 0 Цикл Если СпрСотры.ПометкаУдаления()=1 Тогда Продолжить; КонецЕсли;
Если ПустоеЗначение(СпрСотры.ДатаПриема)=1 Тогда Продолжить; КонецЕсли; Если ПустоеЗначение(СпрСотры.ДатаУвольнения)=0 Тогда Если СпрСотры.ДатаУвольнения<'01.01.2007' Тогда Продолжить; КонецЕсли; КонецЕсли;
Не записывает или записи пустые? Проверьте через КоличествоЗаписей(), КоличествоПолей() (в отладчике) факт занесения информации. Проверить можно через ПолучитьЗначениеПоля () информацию после записи. Можно использовать ф-цию АвтоСохранение(1) после создания базы (не надо использовать Записать()). Можно заменить
Группа: Пользователи
Сообщений: 16
Спасибо сказали: 0 раз
Рейтинг: 0
Цитата(Pepe @ 22.06.13, 13:52)
Не записывает или записи пустые? Проверьте через КоличествоЗаписей(), КоличествоПолей() (в отладчике) факт занесения информации. Проверить можно через ПолучитьЗначениеПоля () информацию после записи. Можно использовать ф-цию АвтоСохранение(1) после создания базы (не надо использовать Записать()). Можно заменить на
ДБФ.УстановитьЗначениеПоля(Code,СпрСотры.Код)
Поля создаются а значения в них нет пустые столбцы
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!