Здравствуйте. Столкнулся с такой проблемой : есть запрос, в цикле по обходу результата запроса создается дбф файл, когда первый раз проходит цикл то все ок, а при втором заходе вылетает с ошибкой на строке ФайлДБФ.СоздавтьФайл(Имяфайла); по причине : не определена структура базы. Подскажите, пожалуйста, с чем может быть связана ошибка?
```1c
    ФайлДБФ= Новый XBase;
    ФайлДБФ.Кодировка = КодировкаXBase.ANSI;

    ФайлДБФ.поля.Добавить("Date","D");
    ФайлДБФ.поля.Добавить("Number","S",25);
    ФайлДБФ.поля.Добавить("ProdCode","S",20);
    ФайлДБФ.поля.Добавить("Amount","N",20,8);

    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
    Диалог.Заголовок = "Путь для сохранения:";
    Диалог.ПолноеИмяФайла = "РТ";
    Диалог.ПредварительныйПросмотр = Ложь;

    Если Диалог.Выбрать() Тогда
    ИмяФайла= Диалог.ПолноеИмяФайла;
    Иначе
    Возврат;
    КонецЕсли;

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("НачалоПериода", НачПериода);
    Запрос.УстановитьПараметр("КонецПериода", КонПериода);
    Запрос.Текст =
    "ВЫБРАТЬ
    | РеализацияТоваровУслуг.Ссылка КАК СсылкаДокумента
    |ИЗ
    | Документ.РеализацияТоваровУслуг.ТоварыКАК РеализацияТоваровУслугТовары
    |ГДЕ
    | РеализацияТоваровУслуг.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
    | И РеализацияТоваровУслуг.Ссылка.ПометкаУдаления = ЛОЖЬ";
    РезультатЗапроса = Запрос.Выполнить().Выбрать();

    Пока РезультатЗапроса .Следующий() Цикл

    ДокументОбъект= РезультатЗапроса .СсылкаДокумента.ПолучитьОбъект();
    ДатаДокумента = Формат(ДокументОбъект.Дата, "ДФ=dd.MM.yyyy");
    Символ = Найти(ДатаДокумента, ".");
    ДеньДаты = Лев(ДатаДокумента, Символ - 1);
    МесяцДаты = Сред(ДатаДокумента, Символ +1, Символ-1);
    ФайлДБФ.СоздатьФайл(ИмяФайла+ ДеньДаты + "_" + МесяцДаты + ".DBF");

    ТабличнаяЧасть = ДокументОбъект.Товары;

    Для Каждого Строка Из ТабличнаяЧасть Цикл

    ФайлДБФ.Добавить();
    ФайлДБФ.Date= ДокументОбъект.Дата;
    ФайлДБФ.Number = ДокументОбъект.Номер;
    ФайлДБФ.ProdCode= Строка.Номенклатура.Код;
    ФайлДБФ.Amount = Строка.Количество;
    ФайлДБФ.Записать();

    КонецЦикла;

    ФайлDBF.ЗакрытьФайл();

    КонецЦикла;
```
---
Решил задачу так:
```1c
    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
    Диалог.Заголовок = "Путь для сохранения:";
    Диалог.ПолноеИмяФайла = "РТ";
    Диалог.ПредварительныйПросмотр = Ложь;

    Если Диалог.Выбрать() Тогда
    ИмяФайла= Диалог.ПолноеИмяФайла;
    Иначе
    Возврат;
    КонецЕсли;

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("НачалоПериода", НачПериода);
    Запрос.УстановитьПараметр("КонецПериода", КонПериода);
    Запрос.Текст =
    "ВЫБРАТЬ
    | РеализацияТоваровУслуг.Ссылка КАК СсылкаДокумента
    |ИЗ
    | Документ.РеализацияТоваровУслуг.ТоварыКАК РеализацияТоваровУслугТовары
    |ГДЕ
    | РеализацияТоваровУслуг.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
    | И РеализацияТоваровУслуг.Ссылка.ПометкаУдаления = ЛОЖЬ";
    РезультатЗапроса = Запрос.Выполнить().Выбрать();

    Пока РезультатЗапроса .Следующий() Цикл

    ФайлДБФ= Новый XBase;
    ФайлДБФ.Кодировка = КодировкаXBase.ANSI;

    ФайлДБФ.поля.Добавить("Date","D");
    ФайлДБФ.поля.Добавить("Number","S",25);
    ФайлДБФ.поля.Добавить("ProdCode","S",20);
    ФайлДБФ.поля.Добавить("Amount","N",20,8);

    ДокументОбъект= РезультатЗапроса .СсылкаДокумента.ПолучитьОбъект();
    ДатаДокумента = Формат(ДокументОбъект.Дата, "ДФ=dd.MM.yyyy");
    Символ = Найти(ДатаДокумента, ".");
    ДеньДаты = Лев(ДатаДокумента, Символ - 1);
    МесяцДаты = Сред(ДатаДокумента, Символ +1, Символ-1);
    ФайлДБФ.СоздатьФайл(ИмяФайла+ ДеньДаты + "_" + МесяцДаты + ".DBF");

    ТабличнаяЧасть = ДокументОбъект.Товары;

    Для Каждого Строка Из ТабличнаяЧасть Цикл

    ФайлДБФ.Добавить();
    ФайлДБФ.Date= ДокументОбъект.Дата;
    ФайлДБФ.Number = ДокументОбъект.Номер;
    ФайлДБФ.ProdCode= Строка.Номенклатура.Код;
    ФайлДБФ.Amount = Строка.Количество;
    ФайлДБФ.Записать();

    КонецЦикла;

    ФайлДБФ .ЗакрытьФайл();
    ФайлДБФ = ";

    КонецЦикла;
```
---
Решил задачу так:
```1c
    Диалог = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
    Диалог.Заголовок = "Путь для сохранения:";
    Диалог.ПолноеИмяФайла = "РТ";
    Диалог.ПредварительныйПросмотр = Ложь;

    Если Диалог.Выбрать() Тогда
    ИмяФайла= Диалог.ПолноеИмяФайла;
    Иначе
    Возврат;
    КонецЕсли;

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("НачалоПериода", НачПериода);
    Запрос.УстановитьПараметр("КонецПериода", КонПериода);
    Запрос.Текст =
    "ВЫБРАТЬ
    | РеализацияТоваровУслуг.Ссылка КАК СсылкаДокумента
    |ИЗ
    | Документ.РеализацияТоваровУслуг.ТоварыКАК РеализацияТоваровУслугТовары
    |ГДЕ
    | РеализацияТоваровУслуг.Ссылка.Дата МЕЖДУ &НачалоПериода И &КонецПериода
    | И РеализацияТоваровУслуг.Ссылка.ПометкаУдаления = ЛОЖЬ";
    РезультатЗапроса = Запрос.Выполнить().Выбрать();

    Пока РезультатЗапроса .Следующий() Цикл

    ФайлДБФ= Новый XBase;
    ФайлДБФ.Кодировка = КодировкаXBase.ANSI;

    ФайлДБФ.поля.Добавить("Date","D");
    ФайлДБФ.поля.Добавить("Number","S",25);
    ФайлДБФ.поля.Добавить("ProdCode","S",20);
    ФайлДБФ.поля.Добавить("Amount","N",20,8);

    ДокументОбъект= РезультатЗапроса .СсылкаДокумента.ПолучитьОбъект();
    ДатаДокумента = Формат(ДокументОбъект.Дата, "ДФ=dd.MM.yyyy");
    Символ = Найти(ДатаДокумента, ".");
    ДеньДаты = Лев(ДатаДокумента, Символ - 1);
    МесяцДаты = Сред(ДатаДокумента, Символ +1, Символ-1);
    ФайлДБФ.СоздатьФайл(ИмяФайла+ ДеньДаты + "_" + МесяцДаты + ".DBF");

    ТабличнаяЧасть = ДокументОбъект.Товары;

    Для Каждого Строка Из ТабличнаяЧасть Цикл

    ФайлДБФ.Добавить();
    ФайлДБФ.Date= ДокументОбъект.Дата;
    ФайлДБФ.Number = ДокументОбъект.Номер;
    ФайлДБФ.ProdCode= Строка.Номенклатура.Код;
    ФайлДБФ.Amount = Строка.Количество;
    ФайлДБФ.Записать();

    КонецЦикла;

    ФайлДБФ .ЗакрытьФайл();
    ФайлДБФ = ";

    КонецЦикла;
```