17 — 24.04.17 — 17:38
Перем ВычетПоПриобретеннымЦенностям;
Процедура ЗаполнитьСтроки_ВычетПоПриобретеннымЦенностям(ОтменитьПроведение = Ложь,Сообщать = Истина, СтрокаСообщения = «», ОшибкаЗаполнения = Ложь) Экспорт
//Если Объект.Проведен Тогда
// Если ОтменитьПроведение Тогда
// Записать(РежимЗаписиДокумента.ОтменаПроведения);
// Иначе
// Возврат;
// КонецЕсли;
//КонецЕсли;
УчетнаяПолитикаНУ = ОбщегоНазначения.ПолучитьПараметрыУчетнойПолитики(Объект.Дата, ОшибкаЗаполнения, Объект.Организация);
Если ОшибкаЗаполнения Тогда
СтрокаСообщения = «Не указаны параметры учетной политики («+СокрЛП(Объект.Организация)+») на » + Формат(Объект.Дата, «ДЛФ=DD») + Символы.ПС
+ «Табличное поле «Вычет НДС по приобретенным ценностям» не может быть заполнено автоматически.»;
Если Сообщать Тогда
ОбщегоНазначения.СообщитьОбОшибке(«Документ не заполнен:»+СтрокаСообщения,,Строка(Объект.Ссылка));
КонецЕсли;
Возврат;
КонецЕсли;
ТаблицаРезультатов = ВычетПоПриобретеннымЦенностям.ВыгрузитьКолонки();
Если Объект.ПредъявленНДСКВычету0 Тогда
Таблица_НДСкВычету = ЗаполнитьНДСКВычетуПоДаннымРегистраНДСПредъявленныйРеализация0();
Иначе
Таблица_НДСкВычету = ЗаполнитьНДСКВычетуПоДаннымРегистраНДСПредъявленный();
КонецЕсли;
Если Таблица_НДСкВычету.Количество()=0 Тогда
// Дальнейшая обработка не требуется, не обнаружен НДС, который может быть принят к вычету.
ВычетПоПриобретеннымЦенностям.Очистить();
Возврат;
КонецЕсли;
СписокСчетовФактур = ОбщегоНазначения.УдалитьПовторяющиесяЭлементыМассива(Таблица_НДСкВычету.ВыгрузитьКолонку(«СчетФактура»), Истина);
// Ограничиваем получаемые распределенные оплаты только отфактурованными поступлениями.
// Отсутствие СФ допускается только для НДС, уплаченного на таможне, а оплаты по нему тоже не регистрируются.
ТаблицаСФ = УчетНДС.ОпределитьНаличиеСчетовФактурПолученных(,КонецДня(Объект.Дата),Объект.Организация, СписокСчетовФактур,Ложь, Истина, Истина, КонецДня(Объект.Дата));
ОтфактурованныеПоступления = ОбщегоНазначения.УдалитьПовторяющиесяЭлементыМассива(ТаблицаСФ.ВыгрузитьКолонку(«Документ»),Истина);
СписокСчетовФактур = Новый СписокЗначений;
СписокСчетовФактур.ЗагрузитьЗначения(ОтфактурованныеПоступления);
Для Каждого СтрокаСчетФактура Из Таблица_НДСкВычету Цикл
Если Не СписокСчетовФактур.НайтиПоЗначению(СтрокаСчетФактура.СчетФактура) = Неопределено Тогда
НоваяСтрока = ТаблицаРезультатов.Добавить();
ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаСчетФактура);
Если Объект.ПредъявленНДСКВычету0
И НоваяСтрока.Состояние = Перечисления.НДССостоянияРеализация0.НеПодтвержденаРеализация0
И Не КонецКвартала(НоваяСтрока.ДокументОтгрузки.Дата) = КонецКвартала(Объект.Дата) Тогда
НоваяСтрока.ЗаписьДополнительногоЛиста = Истина;
НоваяСтрока.КорректируемыйПериод = НоваяСтрока.ДокументОтгрузки.Дата;
КонецЕсли;
КонецЕсли;
КонецЦикла;
ВычетПоПриобретеннымЦенностям.Загрузить(ТаблицаРезультатов);
ВычетПоПриобретеннымЦенностям.Сортировать(«СчетФактура, Поставщик, ВидЦенности, СтавкаНДС, ДокументОплаты, СчетУчетаНДС»);
КонецПроцедуры // ЗаполнитьСтрокиДокумента()
// Вызывается из процедуры ЗаполнитьСтроки_ВычетПоПриобретеннымЦенностям.
// Заполняет ТЧ ВычетПоПриобретеннымЦенностям по данным регистра НДСПредъявленный
Функция ЗаполнитьНДСКВычетуПоДаннымРегистраНДСПредъявленный()
Запрос = Новый Запрос;
Запрос.Текст =
«ВЫБРАТЬ
| НДСПредъявленныйОстатки.Организация,
| НДСПредъявленныйОстатки.СчетФактура КАК СчетФактура,
| НДСПредъявленныйОстатки.ВидЦенности,
| НДСПредъявленныйОстатки.СтавкаНДС,
| НДСПредъявленныйОстатки.СчетУчетаНДС,
| НДСПредъявленныйОстатки.Поставщик,
| НДСПредъявленныйОстатки.ДатаОплаты,
| ВЫБОР
| КОГДА ЕСТЬNULL(СУММА(НДСПредъявленныйОстаткиИтог.СуммаБезНДСОстаток), 0) = 0
| ТОГДА 0
| ИНАЧЕ (ЕСТЬNULL(СУММА(НДСПредъявленныйОстаткиИтог.СуммаБезНДСОстаток), 0) — ЕСТЬNULL(НДСпоОСиНМАОстатки.СуммаБезНДСОстаток, 0) — ЕСТЬNULL(НДСПредъявленныйРеализация0Остатки.СуммаБезНДСОстаток, 0)) * ЕСТЬNULL(НДСПредъявленныйОстатки.СуммаБезНДСОстаток, 0) / ЕСТЬNULL(СУММА(НДСПредъявленныйОстаткиИтог.СуммаБезНДСОстаток), 0)
| КОНЕЦ КАК СуммаБезНДС,
| ВЫБОР
| КОГДА ЕСТЬNULL(СУММА(НДСПредъявленныйОстаткиИтог.НДСОстаток), 0) = 0
| ТОГДА 0
| ИНАЧЕ (ЕСТЬNULL(СУММА(НДСПредъявленныйОстаткиИтог.НДСОстаток), 0) — ЕСТЬNULL(НДСПредъявленныйРеализация0Остатки.НДСОстаток, 0) — ЕСТЬNULL(НДСпоОСиНМАОстатки.НДСОстаток, 0)) * ЕСТЬNULL(НДСПредъявленныйОстатки.НДСОстаток, 0) / ЕСТЬNULL(СУММА(НДСПредъявленныйОстаткиИтог.НДСОстаток), 0)
| КОНЕЦ КАК НДС,
| ЕСТЬNULL(НДСПредъявленныйОстатки.СчетФактура.Дата, &Дата) КАК СчетФактураДата,
| НДСПредъявленныйОстатки.ИсправленныйСчетФактура
|ИЗ
| РегистрНакопления.НДСПредъявленный.Остатки(
| &ДатаГраница,
| Организация = &Организация
| И (НЕ ВидЦенности В (&ИсключаемыеВидыЦенностей))
| И ВЫБОР
| КОГДА ВидЦенности В (&ВидыЦенностейОплата)
| ТОГДА ДатаОплаты <> ДАТАВРЕМЯ(1, 1, 1)
| КОГДА ВидЦенности В (&ВидыЦенностей_ОплатаПоНДССМР)
| ТОГДА ВЫБОР
| КОГДА ЕСТЬNULL(СчетФактура.Дата, &Дата) < ДАТАВРЕМЯ(2009, 1, 1)
| ТОГДА ДатаОплаты <> ДАТАВРЕМЯ(1, 1, 1)
| ИНАЧЕ ИСТИНА
| КОНЕЦ
| ИНАЧЕ ИСТИНА
| КОНЕЦ
| И (НЕ СчетФактура ССЫЛКА Документ.КорректировкаРеализации)) КАК НДСПредъявленныйОстатки
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.НДСпоОСиНМА.Остатки(
| &ДатаГраница,
| Организация = &Организация
| И НДСВключенВСтоимость = ЛОЖЬ
| И (НЕ ВидЦенности В (&ИсключаемыеВидыЦенностей))
| И НеВлияетНаВычет = ЛОЖЬ) КАК НДСпоОСиНМАОстатки
| ПО НДСПредъявленныйОстатки.СчетФактура = НДСпоОСиНМАОстатки.СчетФактура
| И НДСПредъявленныйОстатки.ВидЦенности = НДСпоОСиНМАОстатки.ВидЦенности
| И НДСПредъявленныйОстатки.СтавкаНДС = НДСпоОСиНМАОстатки.СтавкаНДС
| И НДСПредъявленныйОстатки.СчетУчетаНДС = НДСпоОСиНМАОстатки.СчетУчетаНДС
| И (НДСпоОСиНМАОстатки.СуммаБезНДСОстаток + НДСпоОСиНМАОстатки.НДСОстаток > 0)
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.НДСПредъявленныйРеализация0.Остатки(
| &ДатаГраница,
| Организация = &Организация
| И (НЕ ВидЦенности В (&ИсключаемыеВидыЦенностей))) КАК НДСПредъявленныйРеализация0Остатки
| ПО НДСПредъявленныйОстатки.СчетФактура = НДСПредъявленныйРеализация0Остатки.СчетФактура
| И НДСПредъявленныйОстатки.ВидЦенности = НДСПредъявленныйРеализация0Остатки.ВидЦенности
| И НДСПредъявленныйОстатки.СтавкаНДС = НДСПредъявленныйРеализация0Остатки.СтавкаНДС
| И НДСПредъявленныйОстатки.СчетУчетаНДС = НДСПредъявленныйРеализация0Остатки.СчетУчетаНДС
| И (НДСПредъявленныйРеализация0Остатки.СуммаБезНДСОстаток + НДСПредъявленныйРеализация0Остатки.НДСОстаток > 0)
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.НДСПредъявленный.Остатки(
| &ДатаГраница,
| Организация = &Организация
| И (НЕ ВидЦенности В (&ИсключаемыеВидыЦенностей))
| И ВЫБОР
| КОГДА ВидЦенности В (&ВидыЦенностейОплата)
| ТОГДА ДатаОплаты <> ДАТАВРЕМЯ(1, 1, 1)
| КОГДА ВидЦенности В (&ВидыЦенностей_ОплатаПоНДССМР)
| ТОГДА ВЫБОР
| КОГДА ЕСТЬNULL(СчетФактура.Дата, &Дата) < ДАТАВРЕМЯ(2009, 1, 1)
| ТОГДА ДатаОплаты <> ДАТАВРЕМЯ(1, 1, 1)
| ИНАЧЕ ИСТИНА
| КОНЕЦ
| ИНАЧЕ ИСТИНА
| КОНЕЦ) КАК НДСПредъявленныйОстаткиИтог
| ПО НДСПредъявленныйОстатки.СчетФактура = НДСПредъявленныйОстаткиИтог.СчетФактура
| И НДСПредъявленныйОстатки.ВидЦенности = НДСПредъявленныйОстаткиИтог.ВидЦенности
| И НДСПредъявленныйОстатки.СтавкаНДС = НДСПредъявленныйОстаткиИтог.СтавкаНДС
| И НДСПредъявленныйОстатки.СчетУчетаНДС = НДСПредъявленныйОстаткиИтог.СчетУчетаНДС
| И НДСПредъявленныйОстатки.Организация = НДСПредъявленныйОстаткиИтог.Организация
| И НДСПредъявленныйОстатки.Поставщик = НДСПредъявленныйОстаткиИтог.Поставщик
|ГДЕ
| (НДСПредъявленныйОстатки.СуммаБезНДСОстаток > 0
| ИЛИ НДСПредъявленныйОстатки.НДСОстаток > 0)
|
|СГРУППИРОВАТЬ ПО
| НДСПредъявленныйОстатки.Организация,
| НДСПредъявленныйОстатки.СчетФактура,
| НДСПредъявленныйОстатки.ВидЦенности,
| НДСПредъявленныйОстатки.СтавкаНДС,
| НДСПредъявленныйОстатки.СчетУчетаНДС,
| НДСПредъявленныйОстатки.Поставщик,
| ЕСТЬNULL(НДСПредъявленныйОстатки.СчетФактура.Дата, &Дата),
| НДСПредъявленныйОстатки.ДатаОплаты,
| НДСпоОСиНМАОстатки.СуммаБезНДСОстаток,
| НДСПредъявленныйРеализация0Остатки.СуммаБезНДСОстаток,
| НДСПредъявленныйОстатки.СуммаБезНДСОстаток,
| НДСПредъявленныйРеализация0Остатки.НДСОстаток,
| НДСпоОСиНМАОстатки.НДСОстаток,
| НДСПредъявленныйОстатки.НДСОстаток,
| НДСПредъявленныйОстатки.ИсправленныйСчетФактура
|
|ИМЕЮЩИЕ
| СУММА(ЕСТЬNULL(НДСПредъявленныйОстаткиИтог.СуммаБезНДСОстаток, 0) — ЕСТЬNULL(НДСпоОСиНМАОстатки.СуммаБезНДСОстаток, 0) — ЕСТЬNULL(НДСПредъявленныйРеализация0Остатки.СуммаБезНДСОстаток, 0) + ЕСТЬNULL(НДСПредъявленныйОстаткиИтог.НДСОстаток, 0) — ЕСТЬNULL(НДСПредъявленныйРеализация0Остатки.НДСОстаток, 0) — ЕСТЬNULL(НДСпоОСиНМАОстатки.НДСОстаток, 0)) > 0
|
|УПОРЯДОЧИТЬ ПО
| СчетФактураДата»;
Запрос.УстановитьПараметр(«Организация», Объект.Организация);
Запрос.УстановитьПараметр(«Дата», КонецДня(Объект.Дата));
Запрос.УстановитьПараметр(«ДатаГраница», новый Граница(КонецДня(Объект.Дата),ВидГраницы.Включая));
// Исключаемые из анализа виды ценностей
ИсключаемыеВидыЦенностей = Новый СписокЗначений;
ИсключаемыеВидыЦенностей.Добавить(Перечисления.ВидыЦенностей.АвансыПолученные);
ИсключаемыеВидыЦенностей.Добавить(Перечисления.ВидыЦенностей.АвансыПолученные0);
ИсключаемыеВидыЦенностей.Добавить(Перечисления.ВидыЦенностей.АвансыВыданные);
// Виды ценностей, по которым требуется оплата
ВидыЦенностейОплата = Новый СписокЗначений;
ВидыЦенностейОплата.Добавить(Перечисления.ВидыЦенностей.НалоговыйАгентАренда);
ВидыЦенностейОплата.Добавить(Перечисления.ВидыЦенностей.НалоговыйАгентРеализацияИмущества);
ВидыЦенностейОплата.Добавить(Перечисления.ВидыЦенностей.НалоговыйАгентИностранцы);
// Виды ценностей с особым порядком распределения оплат — по НДС выплаченному в бюджет
ВидыЦенностей_ОплатаПоНДССМР = Новый СписокЗначений;
ВидыЦенностей_ОплатаПоНДССМР.Добавить(Перечисления.ВидыЦенностей.СМРСобственнымиСилами);
Запрос.УстановитьПараметр(«ИсключаемыеВидыЦенностей», ИсключаемыеВидыЦенностей);
Запрос.УстановитьПараметр(«ВидыЦенностейОплата», ВидыЦенностейОплата);
Запрос.УстановитьПараметр(«ВидыЦенностей_ОплатаПоНДССМР», ВидыЦенностей_ОплатаПоНДССМР);
ТЗ=Запрос.Выполнить().Выгрузить();
Сч=0;
Пока Сч < ТЗ.Количество() Цикл
СтрокаТаблицы = ТЗ.Получить(Сч);
Если НЕ СчетСоответсвуетОтбору(СтрокаТаблицы.СчетУчетаНДС) Тогда
Сообщить(» ** «+СтрокаТаблицы.СчетУчетаНДС);
ТЗ.Удалить(СтрокаТаблицы);
Иначе
Сч = Сч + 1;
Сообщить(» ?? «+СтрокаТаблицы.СчетУчетаНДС);
КонецЕсли;
КонецЦикла;
Возврат ТЗ;
КонецФункции // ЗаполнитьНДСКВычетуПоДаннымРегистраНДСПредъявленный()
// Вызывается из процедуры ЗаполнитьСтроки_ВычетПоПриобретеннымЦенностям.
// Заполняет ТЧ ВычетПоПриобретеннымЦенностям по данным регистра НДСПредъявленныйРеализация0
Функция ЗаполнитьНДСКВычетуПоДаннымРегистраНДСПредъявленныйРеализация0()
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос.Текст = «ВЫБРАТЬ
| НДСПредъявленныйРеализация0Остатки.СчетФактура КАК СчетФактура,
| НДСПредъявленныйРеализация0Остатки.ВидЦенности,
| НДСПредъявленныйРеализация0Остатки.СтавкаНДС,
| НДСПредъявленныйРеализация0Остатки.СчетУчетаНДС,
| ЕСТЬNULL(НДСПредъявленныйРеализация0Остатки.СуммаБезНДСОстаток, 0) КАК СуммаБезНДС,
| ЕСТЬNULL(НДСПредъявленныйРеализация0Остатки.НДСОстаток, 0) КАК НДС,
| ЕСТЬNULL(НДСПредъявленныйРеализация0Остатки.СчетФактура.Дата, &Дата) КАК СчетФактураДата,
| НДСПредъявленныйРеализация0Остатки.ДокументОтгрузки,
| НДСПредъявленныйРеализация0Остатки.Состояние
|ИЗ
| РегистрНакопления.НДСПредъявленныйРеализация0.Остатки(
| &ДатаГраница,
| Организация = &Организация
| И Состояние В (&ОтрабатываемыеСостояния)) КАК НДСПредъявленныйРеализация0Остатки
|ГДЕ
| (НДСПредъявленныйРеализация0Остатки.СуммаБезНДСОстаток > 0
| ИЛИ НДСПредъявленныйРеализация0Остатки.НДСОстаток > 0)
|
|УПОРЯДОЧИТЬ ПО
| СчетФактураДата»;
Запрос.УстановитьПараметр(«Организация», Объект.Организация);
Запрос.УстановитьПараметр(«Дата», КонецДня(Объект.Дата));
Запрос.УстановитьПараметр(«ДатаГраница», новый Граница(КонецДня(Объект.Дата),ВидГраницы.Включая));
// Исключаемые из анализа виды ценностей
ИсключаемыеВидыЦенностей = Новый СписокЗначений;
ИсключаемыеВидыЦенностей.Добавить(Перечисления.ВидыЦенностей.АвансыПолученные);
ИсключаемыеВидыЦенностей.Добавить(Перечисления.ВидыЦенностей.АвансыПолученные0);
ИсключаемыеВидыЦенностей.Добавить(Перечисления.ВидыЦенностей.АвансыВыданные);
// Виды ценностей, по которым требуется оплата
ВидыЦенностейОплата = Новый СписокЗначений;
ВидыЦенностейОплата.Добавить(Перечисления.ВидыЦенностей.НалоговыйАгентАренда);
ВидыЦенностейОплата.Добавить(Перечисления.ВидыЦенностей.НалоговыйАгентРеализацияИмущества);
ВидыЦенностейОплата.Добавить(Перечисления.ВидыЦенностей.НалоговыйАгентИностранцы);
ВидыЦенностейОплата.Добавить(Перечисления.ВидыЦенностей.ВнутреннееПотребление);
ВидыЦенностейОплата.Добавить(Перечисления.ВидыЦенностей.СМРСобственнымиСилами);
Запрос.УстановитьПараметр(«ИсключаемыеВидыЦенностей», ИсключаемыеВидыЦенностей);
Запрос.УстановитьПараметр(«ВидыЦенностейОплата», ВидыЦенностейОплата);
ОтрабатываемыеСостояния = Новый СписокЗначений;
ОтрабатываемыеСостояния.Добавить(Перечисления.НДССостоянияРеализация0.ПодтвержденаРеализация0);
ОтрабатываемыеСостояния.Добавить(Перечисления.НДССостоянияРеализация0.НеПодтвержденаРеализация0);
Запрос.УстановитьПараметр(«ОтрабатываемыеСостояния»,ОтрабатываемыеСостояния);
РезультатЗапроса = Запрос.Выполнить().Выгрузить();
Запрос.Текст = «ВЫБРАТЬ
| НДСПредъявленныйОстатки.СчетФактура,
| НДСПредъявленныйОстатки.ВидЦенности,
| НДСПредъявленныйОстатки.СтавкаНДС,
| НДСПредъявленныйОстатки.СчетУчетаНДС,
| НДСПредъявленныйОстатки.Поставщик,
| НДСПредъявленныйОстатки.ДатаОплаты,
| НДСПредъявленныйОстатки.СуммаБезНДСОстаток КАК СуммаБезНДС,
| НДСПредъявленныйОстатки.НДСОстаток КАК НДС
|ИЗ
| РегистрНакопления.НДСПредъявленный.Остатки(
| &ДатаГраница,
| Организация = &Организация
| И (НЕ ВидЦенности В (&ИсключаемыеВидыЦенностей))
| И ВЫБОР
| КОГДА ВидЦенности В (&ВидыЦенностейОплата)
| ТОГДА ДатаОплаты <> ДАТАВРЕМЯ(1, 1, 1)
| ИНАЧЕ ИСТИНА
| КОНЕЦ
| И СчетФактура В (&СписокСчетовФактур)) КАК НДСПредъявленныйОстатки
|ГДЕ
| НДСПредъявленныйОстатки.СуммаБезНДСОстаток + НДСПредъявленныйОстатки.НДСОстаток > 0″;
Запрос.УстановитьПараметр(«СписокСчетовФактур», РезультатЗапроса.ВыгрузитьКолонку(«СчетФактура»));
НДСПредъявленный = Запрос.Выполнить().Выгрузить();
Результат = РезультатЗапроса.СкопироватьКолонки();
Результат.Колонки.Добавить(«Поставщик», Новый ОписаниеТипов(«СправочникСсылка.Контрагенты»));
Результат.Колонки.Добавить(«ДатаОплаты», Новый ОписаниеТипов(«Дата»));
СтруктураОтбора = Новый структура(«СчетФактура, ВидЦенности, СтавкаНДС, СчетУчетаНДС»);
// Отбираем строки к вычету по регистру НДСПредъявленныйРеализация0, не превышающие остаток по НДСПредъявленный.
// Определяем поставщика и дату оплаты по остаткам НДСПредъявленный.
Для Каждого СтрокаКВычету Из РезультатЗапроса Цикл
ЗаполнитьЗначенияСвойств(СтруктураОтбора, СтрокаКВычету);
СтрокиНДСПредъявленный = НДСПредъявленный.НайтиСтроки(СтруктураОтбора);
Если СтрокиНДСПредъявленный.Количество() = Неопределено Тогда
Продолжить;
КонецЕсли;
Для Каждого СтрокаНДСПредъявленный Из СтрокиНДСПредъявленный Цикл
Сообщить(«- «+СтрокаНДСПредъявленный.СчетУчетаНДС);
Если НЕ СчетСоответсвуетОтбору(СтрокаНДСПредъявленный.СчетУчетаНДС) Тогда
Продолжить;
КонецЕсли;
Если СтрокаКВычету.СуммаБезНДС = 0 И СтрокаКВычету.НДС = 0 Тогда
Прервать;
КонецЕсли;
СуммаБезНДС = Мин(СтрокаКВычету.СуммаБезНДС, СтрокаНДСПредъявленный.СуммаБезНДС);
НДС = Мин(СтрокаКВычету.НДС, СтрокаНДСПредъявленный.НДС);
НоваяСтрока = Результат.Добавить();
ЗаполнитьЗначенияСвойств(НоваяСтрока, СтрокаКВычету);
НоваяСтрока.СуммаБезНДС = СуммаБезНДС;
НоваяСтрока.НДС = НДС;
НоваяСтрока.Поставщик = СтрокаНДСПредъявленный.Поставщик;
НоваяСтрока.ДатаОплаты = СтрокаНДСПредъявленный.ДатаОплаты;
СтрокаКВычету.СуммаБезНДС = СтрокаКВычету.СуммаБезНДС — СуммаБезНДС;
СтрокаКВычету.НДС = СтрокаКВычету.НДС — НДС;
СтрокаНДСПредъявленный.СуммаБезНДС = СтрокаНДСПредъявленный.СуммаБезНДС — СуммаБезНДС;
СтрокаНДСПредъявленный.НДС = СтрокаНДСПредъявленный.НДС — НДС;
КонецЦикла;
КонецЦикла;
Возврат Результат;
КонецФункции // ЗаполнитьНДСКВычетуПоДаннымРегистраНДСПредъявленныйРеализация0()
Функция СчетСоответсвуетОтбору(СчетУчетаНДС)
Если Счета.Количество()=0 Тогда
Возврат Истина;
КонецЕсли;
Для каждого Ст Из Счета Цикл
Если Ст.Счет=СчетУчетаНДС и Ст.Учитывать Тогда
Возврат Истина;
КонецЕсли;
КонецЦикла;
Возврат Ложь;
КонецФункции
Процедура КнопкаВыполнитьНажатие(Кнопка)
//Если ОчищатьТабличнуюЧасть Тогда
ЗаполнитьСтроки_ВычетПоПриобретеннымЦенностям();
//Иначе
//КонецЕсли;
Комментарий=»заполнено по счетам: «;
Для каждого Ст Из счета Цикл
Если Ст.Учитывать Тогда
Комментарий=Комментарий+Ст.Счет+» «;
КонецЕсли;
КонецЦикла;
Объект.Комментарий=Комментарий;
ЭтаФорма.Закрыть();
КонецПроцедуры
Процедура ПриОткрытии()
//ОчищатьТабличнуюЧасть=Истина;
//Сообщить(«»+ИмяТЧ);
ВычетПоПриобретеннымЦенностям=Вычислить(«Объект.»+ИмяТЧ);
ЗаполнитьСчета();
КонецПроцедуры
Процедура ЗаполнитьСчета()
Запрос = Новый Запрос;
Запрос.Текст = «ВЫБРАТЬ
| Хозрасчетный.Ссылка КАК Счет
|ИЗ
| ПланСчетов.Хозрасчетный КАК Хозрасчетный
|ГДЕ
| Хозрасчетный.Ссылка В ИЕРАРХИИ(&Родитель)
| И Хозрасчетный.ЗапретитьИспользоватьВПроводках = ЛОЖЬ
| И Хозрасчетный.Код <> «»19.07″»
|
|УПОРЯДОЧИТЬ ПО
| Хозрасчетный.Ссылка
|АВТОУПОРЯДОЧИВАНИЕ»;
Запрос.УстановитьПараметр(«Родитель»,ПланыСчетов.Хозрасчетный.НайтиПоКоду(«19»));
Результат = Запрос.Выполнить();
Счета.Загрузить(Результат.Выгрузить());
КонецПроцедуры
14.09.2017
Сегодня, после обновления 1С:Бухгалтерии предприятия, на версию 2.0.64.6, при открытии Регламентированных отчетов стала появляться ошибка следующего содержания:
{(5, 2)}: Таблица не найдена «Константы»
<<?>>Константы КАК Константы
Если нажать кнопку «Подробно», то получали ошибку:
{Обработка.ОнлайнСервисыРегламентированнойОтчетности.МодульОбъекта(772)}: Ошибка при вызове метода контекста (Выполнить)
Выборка = Запрос.Выполнить().Выбрать();
по причине:
{(5, 2)}: Таблица не найдена «Константы»
<<?>>Константы КАК Константы
Причем ошибка появилась сразу на нескольких базах и у всех пользователей. Также эта ошибка выходила при просмотре журнала документов Реализация товаров и услуг.
Решение проблемы
В результате было найдено два способа решения этой проблемы.
Способ №1″
У клиента использовалась платформа 8.2.19.106, и проблема решилась обновлением до версии 8.3.5.1383
Способ №2
Необходимо зайти в режим «Конфигуратор» (остальные пользователи при этом должны выйти из программы). Перейти в меню Администрирование -> Тестирование и исправление. После завершения процесса можно закрывать конфигуратор и пользоваться программой. Ошибка должна исчезнуть
Канал про 1С появился в telegram
Следите за выходом отчетов и расширений для 1С на новом Telegram-канале здесь. Нас уже более 700 человек!
Содержание:
1. Возникновение ошибки «Таблица не найдена» в конфигурации системы 1С
Ошибка типа «Таблица не найдена…» в системе на базе 1С имеет несколько видов:
1. Если открыть регламентированные отчёты в 1С или журналы документации в конфигурации «1С: Бухгалтерия», после обновления системы, то начинает возникать окно, которое сообщает об ошибке, как демонстрируется ниже:
При этом, данная неполадка появляется у всех юзеров 1С, даже с разными базами данных.
2. Также, эта же ошибка может возникать в конфигурации системы 1С: Предприятие при некорректном выходе из системы, тогда её текст будет следующим: «Таблица не найдена: _Reference76».
Эта ошибка является ошибкой СУБД в 1С, а именно – SQL.
2. Устранение первого и второго вида ошибки «Таблица не найдена…» в конфигурации системы 1С Предприятие
Если кликнуть на «Подробнее», то получим следующее сообщение:
При возникновении ошибки «Таблица не найдена…» в конфигурации системы 1С: Бухгалтерия следует по порядку следовать пунктам ниже, один из них всегда устраняет неполадку:
· Обновить систему 1С до последней версии;
· Перейти в «Конфигуратор», при этом, другие юзеры 1С должны покинуть программу, кликнуть на панель «Администрирование 1С Предприятие» и выбрать пункт «Тестирование и исправление 1С», после чего, ошибка должна пропасть.
Наиболее логичным кажется проверить сохранность файла 1Сv8.1CD, пользуясь утилитой chdbfl.exe, однако, этот метод не отобразит ошибок и, в данном случае, следует действовать иначе.
Рассмотрим, по порядку, необходимый перечень действий:
1. Первым шагом нужно определить название таблицы «_Reference76» внутри информационной базы, для этого нужно воспользоваться внешней обработкой. То есть, по сути, эта таблица удалена, но являлась справочной. Из этого следует, что нужно узнать её исходный справочник. При помощи обработки делаем это, результатом чего найдено его название – «Спецификация номенклатуры».
2. Далее нужно поменять «Спецификация номенклатуры» на другой справочник. Это делается так:
· Меняем имя с «СпецификацияНоменклатуры» на имя «ЯСпецификацииНоменклатуры» — это делается, кликнув на имя справочника, переходом в меню, выбором пункта «Свойства», после чего внутри поля «Имя» меняем данные;
· Далее кликаем на имя справочника и избираем «Сортировать», после чего, справочники будут отсортированы по имени и наш справочник будет последним;
· Открываем такую же конфигурацию системы 1С, только в ней справочник «СпецификацииНоменклатуры» недолжен быть повреждён, запускаем её в режиме конфигуратора в 1С и копируем этот справочник, как показано ниже:
· Запускаем систему, где база была повреждена и вносим туда скопированный справочник;
· Далее кликаем на «Конфигурация», выбираем пункт «Поддержка» и переходим по «Настройка поддержки», где нужно два раза кликнуть по справочнику «ЯСпецификацииНоменклатуры», откроется следующее окно и нужно выбрать как на скриншоте ниже:
· Как только справочник будет снят с поддержки, дерево метаданных будет отображаться так:
3. Следующий шаг – убрать ссылки в прошлом справочнике и удалить его. Для этого кликаем по «ЯСпецификацииНоменклатуры» и выбираем «Удалить», появится следующее обращение о невозможности провести удаление, в котором нужно кликнуть «ОК»:
В панели со служебными сообщениями отобразится перечень из объектов, в которых содержаться ссылки на данный справочник. Этот перечень можно заменить при помощи ссылки из «ЯСпецификацииНоменклатуры» на «СпецификацииНоменклатуры»:
Для замены ссылки нужно дважды кликнуть по каждой строке перечня.
К примеру, выберем первый пункт перечня, если кликнуть на него два раза, то запустится объект, в котором будет ссылка на «ЯСпецификацииНоменклатуры»:
Открываем свойства объекта 1С, в которых хранится ссылка на наш справочник:
Внутри поля «Источник» можно наблюдать составной тип с нашим справочником. Меняем ссылку на «СпецификацииНоменклатуры» внутри инструмента по редакции составных типов. Далее делаем следующее, как на скриншоте ниже:
Все действия необходимо провести для каждого элемента перечня. Как только ссылки изменены – объект может быть удалён. Сохраним полученный результат в конфигурации.
Получили, что номенклатурный справочник «СпецификацииНоменклатуры» ссылается теперь на эту таблицу из базы 1С – «_Reference6845». Данные из справочника необходимо вернуть. Ошибка устранена.
Специалист компании «Кодерлайн»
Айдар Фархутдинов
Доброго времени суток, уважаемые читатели блога SoftMaker.kz. Сегодня мы поговорим, как побороть ошибку, возникающую в файловой базе 1С при неправильном закрытии системы 1С:Предприятие, например при внезапном отключении света или неправильной работе компьютера (работает и в случае, если 1С:Предприятие 8 установлено на MS SQL Server 2008 R2 Express). Ошибка СУБД: Ошибка SQL: «Таблица не найдена: _Reference76» появлялась, когда производилось тестирование и исправление информационной базы (ТиИ ИБ) при прохождении проверки логической целостности ИБ. При попытке выгрузить ИБ Конфигуратор вылетал.
Проверка физической целостности файла 1Cv8.1CD с помощью утилиты chdbfl.exe показало, что ошибок не обнаружено. Поэтому пришлось идти другим путём и получилось следующее:
- Определяем как в базе называется таблица _Reference76 с помощью внешней обработки 1С
- Заменяем справочник «Спецификации номенклатуры» на новый
- Убираем ссылки со старого справочника «Спецификации номенклатуры» и удаляем его
Определяем как в базе называется таблица _Reference76 с помощью внешней обработки 1С
В случае ошибки СУБД: Ошибка SQL: Таблица не найдена _Reference76 сразу становится ясно, что была удалена таблица «_Reference76» и из названия ясно, что это какой-то справочник. Но как теперь определить, к какому именно справочнику таблица «_Reference76» относится, чтобы попытаться её восстановить? Для этого можно написать небольшую обработку для выяснения названия:
Процедура КнопкаВыполнитьНажатие(Кнопка) МассивИменМетаданных = Новый Массив(); Для каждого Объект Из Метаданные.Справочники Цикл МассивИменМетаданных.Добавить(Объект.ПолноеИмя()); КонецЦикла; // Таблица значений, содержащая таблицы указанного объекта. Таблицы = ПолучитьСтруктуруХраненияБазыДанных(МассивИменМетаданных); Для Каждого Таблица Из Таблицы Цикл Сообщить(Таблица.Метаданные + " - " + Таблица.ИмяТаблицыХранения); КонецЦикла; КонецПроцедуры
В результате работы обработки выяснилось, что таблица «_Reference76» относится к справочнику «Спецификации номенклатуры».
... Справочник.СпецификацииНоменклатуры - Reference76 ...
Обработку для поиска соответствия названия справочников конфигурации 1С и их внутренних таблиц можно скачать отсюда.
Заменяем справочник «Спецификации номенклатуры» на новый
Теперь заменим справочник «Спецификации номенклатуры» на новый. Для этого выполним следующие действия:
- Изменим наименование справочника «СпецификацииНоменклатуры» на «ЯСпецификацииНоменклатуры». Нажмём правой кнопкой мыши на справочнике «СпецификацииНоменклатуры» и в контекстном меню выберем пункт «Свойства» и в поле «Имя» изменим наименование.
- Теперь отсортируем справочники в дереве метаданных по имени. Нажмём правой кнопкой мыши на справочнике «СпецификацииНоменклатуры» и в контекстном меню выберем пункт «Сортировать…». Cправочник «СпецификацииНоменклатуры» оказался в самом низу, нам это пригодится в дальнейшем.
- Теперь заменим справочник «Спецификации номенклатуры» на новый. Для этого нужна идентичная конфигурация с неповреждённым справочником «Спецификации номенклатуры». Нужно открыть эту конфигурацию в режиме «Конфигуратор» и выделить справочник «Спецификации номенклатуры» в дереве метаданных и скопировать его (Ctrl+C).
- Открываем «Конфигуратор» с повреждённой базой и вставляем новый справочником «Спецификации номенклатуры» (Ctrl+V).
- Теперь снимем с поддержки справочник «ЯСпецификацииНоменклатуры», чтобы затем удалить его. «Конфигурация» | «Поддержка» | «Настройка поддержки». В дереве метаданных выберем справочник «ЯСпецификацииНоменклатуры» и двойным щелчком мыши на справочнике откроем следующий диалог:
- В диалоге «Настройка правил поддержки» выберем правило «Объект поставщика снят с поддержки» и поставим флажок «Установить для подчинённых объектов».
- После снятия с поддержки справочники «ЯСпецификацииНоменклатуры» и «СпецификацииНоменклатуры» в дереве метаданных конфигурации выглядят следующим образом:
Убираем ссылки со старого справочника «Спецификации номенклатуры» и удаляем его
-
- Жмём правой кнопкой мыши на справочнике «ЯСпецификацииНоменклатуры» и в контекстном меню выбираем пункт «Удалить». Появилось сообщение Конфигуратора: «Объект не может быть удален, так как на него имеются ссылки в других объектах!»
- Нажимаем на кнопку «ОК». В окне служебных сообщений видим список объектов, которые содержат в себе ссылки на справочник «ЯСпецификацииНоменклатуры». Этот список поможет быстро заменить ссылки со справочника «ЯСпецификацииНоменклатуры» на справочник «СпецификацииНоменклатуры». Приступим.
- Чтобы заменить ссылки в объектах нажимаем на каждую строку списка двойным кликом. Для примера возьмём первый элемент списка «ПодпискаНаСобытие.ПриУстановкеНовогоКодаСправочника.Источник»
- Жмём правой кнопкой мыши на справочнике «ЯСпецификацииНоменклатуры» и в контекстном меню выбираем пункт «Удалить». Появилось сообщение Конфигуратора: «Объект не может быть удален, так как на него имеются ссылки в других объектах!»
- После двойного клика на этом элементе, в дереве метаданных откроется объект и в нём мы найдем ссылку на справочник «ЯСпецификацииНоменклатуры».
- Два раза нажимаем левой кнопкой мыши, чтобы открыть свойство объекта, в котором содержится ссылка на справочник «ЯСпецификацииНоменклатуры».
- Как видно из вышеприведённого изображения в поле «Источник» содержится составной тип, в который входит и справочник «ЯСпецификацииНоменклатуры». Заменим ссылку со справочника «ЯСпецификацииНоменклатуры» на справочник «СпецификацииНоменклатуры» в диалоге редактирования составного типа данных. Ссылка заменяется снятием флажка напротив справочника «ЯСпецификацииНоменклатуры» и установкой флажка напротив справочника «СпецификацииНоменклатуры».
- Эти же самые действия проделываем для всех элементов вышеприведённого списка.
- Открываем каждый объект и заменяем в нём ссылки.
- После замены ссылок объект спокойно удаляется.
- Сохраняем конфигурацию, нажав, клавишу «F7».
Теперь новый справочник «СпецификацииНоменклатуры» ссылается на новую таблицу в базе 1С — _Reference6845. Если в справочнике были какие-нибудь данные, то они уже уничтожены, поэтому нужно их восстановить. Это можно сделать воспользовавшись советами статьи Как выгрузить данные в идентичную конфигурацию 1С? Если была удалена другая таблица, например _DOCUMENT, тогда нужно изменить обработку для поиска соответствия названия документов конфигурации 1С и их внутренних таблиц, а шаги проделать те же самые.
ПОДПИСКА
Капюшон
30.06.11 — 09:28
питание отрубили во время перепроведения документов в УТ10.2
Далее сделали восстановление базы утилитой chdbfl.exe
нашла ошибку, исправила. Однако в конфигураторе запускаю ТИИ (тестирование и исправление информационной базы) и на одном из этапов выдается
«ОШИБКА СУБД: ОШИБКА SQL: Таблица не найдена _Reference33
также при открытии в режиме 1с предприятия, не дает открыть справочник номенклатуры — выходит та же ошибка — видимо справочник номенклатуры поврежден. как можно решить проблему? я сейчас получил Cf файл от копии базы и им попробую полечить
Капюшон
1 — 30.06.11 — 09:31
такс. пробовал делать сравнение-объединение при помощи живого cf файла — выдает, что конфигурации идентичные
DCKiller
2 — 30.06.11 — 09:32
Тебе ж русским языком говорят: в SQL слетела таблица. Причем тут конфигурации?
Prikum
3 — 30.06.11 — 09:33
(2) у него файловая
Капюшон
4 — 30.06.11 — 09:33
(2)так у нас же файловая система!
DCKiller
5 — 30.06.11 — 09:36
(4) Тады придется в дебри лезть. Разбирать 1CD специальной утилитой (тут где-то ссылку на инфостарт на нее давали, щас уже не помню), смотреть его нутро на предмет наличия данной таблицы, и в случае отсутсвия последней руками ее туда встраивать из бэкапа (он у тебя есть, надеюсь?)
DCKiller
6 — 30.06.11 — 09:37
+5 у мну эта прога есть.. могу выслать на мыло, если что, только ближе к вечеру.
Капюшон
7 — 30.06.11 — 09:37
(5)самого бекапа этой базы нет. но есть база идентичной конфигурации
Капюшон
8 — 30.06.11 — 09:38
(6)а как её найти по каким ключевым словам?
Prikum
9 — 30.06.11 — 09:39
Она тебе не сильно поможет, справочник ты уже потерял и востанавливать его надо будет или руками или из бэкапа.
DCKiller
10 — 30.06.11 — 09:42
(8) Названия не помню Что-то вроде 1CDview, я думаю.
Капюшон
11 — 30.06.11 — 09:42
(9)не. ну он что вобще потерян чтоли?
Renat11111
12 — 30.06.11 — 09:43
(6) вышли мне super-ren@yandex.ru
GoldenDawn
13 — 30.06.11 — 09:43
(0)»с 2002 занимаюсь 1с »
баков нет и база файловая )))
DCKiller
14 — 30.06.11 — 09:46
(8), (12) О, вот она! Нашел. Налетай!
http://help1c.com/files/view/37.html
Prikum
15 — 30.06.11 — 09:46
(11) > Таблица не найдена _Reference33
ты как то по другому понимаешь эту фразу?
Капюшон
16 — 30.06.11 — 09:48
(13)у тебя дебильная логика. ты никогда не думал, что к людям могут обращаться с проблемами впервые? мне вот в Казань из Москвы позвонили по рекомендации.
Капюшон
17 — 30.06.11 — 09:49
(14)спасибо!! я уже нашел ее но по твоей наводке ))
Капюшон
18 — 30.06.11 — 09:49
(15)это значит что такой таблицы и содержания следовательно нету. правда куда она могла деться. ну я понял о чем ты.
Капюшон
19 — 30.06.11 — 10:22
Бекапа нет у них и небыло! как же мне восстановить эту таблицу _Reference33 ведь её нету там!
Prikum
20 — 30.06.11 — 10:26
(19) В конфигураторе удалить справочник, потом его восстановить из другой базы и потом набить данные руками, но все равно все полетит к чертовой матери, потому как ссылки посыпались.
Капюшон
21 — 30.06.11 — 10:29
(20)а как справочник удалить если на него отовсюду ссылки?
andrewks
22 — 30.06.11 — 10:30
для начала надо тулом посмотреть, что там сэтой табличкой. может, у неё тупо заголовок похерился и можно исправить
Капюшон
23 — 30.06.11 — 10:30
(22)посмотрел. этой таблицы там вообще нет
Prikum
24 — 30.06.11 — 10:30
(21) Бэкап ведь не зря придумали!
Prikum
25 — 30.06.11 — 10:31
(23) а какие нибудь непонятные таблицы есть?
andrewks
26 — 30.06.11 — 10:32
очень странно. попробуй cf в чистую БД развернуть и глянь какие там таблицы
Капюшон
27 — 30.06.11 — 10:36
(26)развернул. там есть эта таблица.
Капюшон
28 — 30.06.11 — 10:36
(25)непонятных не видел. они там все непонятные по названиям. а какая должна быть?
Prikum
29 — 30.06.11 — 10:37
(28) По полям поищи
Капюшон
30 — 30.06.11 — 10:42
(29)поискал. там нет этого справочника этой таблицы. в небитой базе он есть. но утилита не позволяет импортировать таблицы извне
Капюшон
31 — 30.06.11 — 10:47
как хотябы справочник номенклатуры удалить?
Prikum
32 — 30.06.11 — 10:49
(30) небитая база потомок битой? Архивов вообще нету?
Капюшон
33 — 30.06.11 — 10:50
(32)архивов вообще небыло у них. а небитая база она просто той же конфигурации. их одновременно поставили две чистые. потом в них начали работать параллельно
Капюшон
34 — 30.06.11 — 10:51
(32)там всего пол года ведётся работа. мне хотябы грохнуть щас справочник номенклатуры чтобы потом объединением его восстановить. но он не удаляется потому что на него ссылаются из других объектов метаданных. я забыл где этот контроль можно изменить
Prikum
35 — 30.06.11 — 10:53
(34) а загрузить конфигурацию?
Капюшон
36 — 30.06.11 — 10:56
(35)а это данные не уничтожит? попробую
Prikum
37 — 30.06.11 — 10:59
(36) Всегда умилял такой вопрос! База уже не работает, так что без разницы, уничтожит она данные или нет, да и бэкап никто не запрещает сделать перед процедурой.
БибиГон
38 — 30.06.11 — 11:01
(36) если они конфигурацию не меняли то не должно.
(37) меня москвичи удивляют, не все конечно, но в данном случае жмотье. )
Prikum
39 — 30.06.11 — 11:04
(38) Я не Москвы, если что.
Капюшон
40 — 30.06.11 — 11:12
(36)я задал вопрос потомучто мне было важно знать загрузка конфигурации не удалит ли файлы
Капюшон
41 — 30.06.11 — 11:15
(39)загрузка конфигурации не помогла решить вопрос. таблица также не найдена. нужно чтото делать. похоже SQL сервер ставить
Капюшон
42 — 30.06.11 — 11:17
вобщем ужасно это.. база умерла.
Капюшон
43 — 30.06.11 — 11:27
никто не знает чтоли как восстановить таблицу? может через SQL попробовать?
Капюшон
44 — 30.06.11 — 11:48
А вообще как вариант универсальную выгрузку в Xml сделать
Prikum
45 — 30.06.11 — 12:21
Сколько в архиве весит база вместе с сф нормальным?
Капюшон
46 — 30.06.11 — 12:37
(45)порядка 100
Prikum
47 — 30.06.11 — 12:39
(46) смогу только вечером посмотреть, сразу говорю, что не бесплатно, в случае удачного решения вопроса. Удачным решением будет считаться восстановление справочника номенклатуры как объекта метаданных.
awa15
48 — 30.06.11 — 12:48
(0) Основная проблема тут:
«Далее сделали восстановление базы утилитой chdbfl.exe»
chdbfl.exe и убило таблицу справочника.
Prikum
49 — 30.06.11 — 12:49
(48) а чем еще восстанавливать базу? Ему надо было сначала бэкап сделать, а уже потом ТиИ и chdbfl.exe
awa15
50 — 30.06.11 — 12:55
(49) Если нет бэкапа до применения chdbfl.exe, то содержимое справочника потеряно. Базу восстановить можно, но справочник будет пустой. Потом ТиИ с режимом восстановления объектов может насоздавать новых объектов по ссылкам на справочник.
Aprobator
51 — 30.06.11 — 12:56
(0) ппц. Вечная песня — нет упса и бекапов. И восстановить пытаемся сразу, нет чтобы копию файла сделать сначала.
mdocs
52 — 30.06.11 — 12:59
Очередной финт «надежной» восьмерки. Когда уже 1с редактором разродится?
Prikum
53 — 30.06.11 — 13:02
(50) смотри (47)
Prikum
54 — 30.06.11 — 13:03
(52) очередной финт криворуких пользователей, платформа здесь ни причем.
mdocs
55 — 30.06.11 — 13:04
(54) Пофиг кто винават. Как править?
mdocs
56 — 30.06.11 — 13:04
виноват
awa15
57 — 30.06.11 — 13:06
(53) Зачем мне туда смотреть?
(55) Руками (т.е. hex-редактором) создать таблицу в базе.
GoldenDawn
58 — 30.06.11 — 13:07
(50)нужно из новой подключить к восстановленной из бака и по гуидам из ссылок на справочник перетащить справочник, (естественно по состоянию на момент копирования)
mdocs
59 — 30.06.11 — 13:07
(57) Это я понимаю, кроме вас крайне мало людей на это способно. Я — нет. А базы рушаться с завидной регулярностью
Prikum
60 — 30.06.11 — 13:07
(58) нету у него архива
ДемонМаксвелла
61 — 30.06.11 — 13:42
в DT выгружается?
ДемонМаксвелла
62 — 30.06.11 — 13:45
Что-то не понял, если это файловая, откуда в названии темы и в нулевом посте SQL?
Prikum
63 — 30.06.11 — 13:45
(62) из текста ошибки
Капюшон
64 — 30.06.11 — 14:03
(51)этому магазину пол года. у них даже админа нет. они сделали первое что нашли в интернете — запустили утилиту восстановления.
Капюшон
65 — 30.06.11 — 14:04
(61)В DT не выгружаются.
Капюшон
66 — 30.06.11 — 14:05
(63)я должен сам восстановить работоспособность конфигурации, в крайнем случае перетащить документы через универсальную выгрузку XML в чистую базу.
Капюшон
67 — 30.06.11 — 14:05
(63)и кажется это делается при помощи перевода базы в SQL режим. там то и можно восстановить таблицу
Ёпрст
68 — 30.06.11 — 14:12
(67) вообще ответ в (57) был озвучен..
Капюшон
69 — 30.06.11 — 14:14
(68)да. я как раз думаю над ответом. только неясно каким образом эту таблицу там создать
Ёпрст
70 — 30.06.11 — 14:20
(69) дык ручками, любым hex-редактором, тем более, что у тебя есть донор.. можешь в нём целиком кусок забрать.
Да и, автор поста (57) тебе может восстановить запросто.
Обращайся к нему.
Капюшон
71 — 30.06.11 — 14:21
(57)привет ты здесь?
Капюшон
72 — 30.06.11 — 14:22
(70)попробую. редактор у меня есть. спасибо. правда как в нем найти эту таблицу вопрос пока не решен
mdocs
73 — 30.06.11 — 14:22
Вроде это справочник организации, тогда можно после создать элемент (ы) с правильным идентификатором и все. Но сначала нужно создать таблицу.
awa15
74 — 30.06.11 — 14:28
(71) Привет)) здесь! Стукнись в аську 197-009-285.
Капюшон
75 — 30.06.11 — 14:37
(74)стукнулся! спасибо!
(73)к сожалению это справочник «номенклатура».
Бубр
76 — 30.06.11 — 14:42
(33) ужс какой.
Aprobator
77 — 30.06.11 — 14:45
(59) чей то они вдруг рушатся с завидной регулярностью? У меня вот как то ни одной не упало.
БибиГон
78 — 30.06.11 — 14:48
(77) везение. )
Бубр
79 — 30.06.11 — 14:49
(77) уже 3я или 4я тема за пару дней. и ни у одного бэкапов нету
Капюшон
80 — 30.06.11 — 14:51
(79)люди еще не дорасли до бекапов )
БибиГон
81 — 30.06.11 — 14:52
(79) если это статистика по стране то не так уж и много.
Бубр
82 — 30.06.11 — 14:53
(80) буду оч удивлен если этот рост не произошел с этим крушением базы
Бубр
83 — 30.06.11 — 14:55
(81) хотя, люди, которые это могут восстановить тоже должны зарабатывать
БибиГон
84 — 30.06.11 — 14:57
(83) awa вроде делает это бесплатно. во всяком случае на форуме.
Aprobator
85 — 30.06.11 — 14:57
(79) дык падает у кого? Что не тема — везде «мне позвонили клиенты, админа нет, программиста нет, упса нет, бекапов нет». На что люди надеются — фиг знает.
Aprobator
86 — 30.06.11 — 14:58
(78) везение тут не при чем. Документация читать надо и выполнять проверенные рекомендации.
Бубр
87 — 30.06.11 — 15:02
(85) странно что при установке может и не говорилось про бэкапы, а может и говорилось но клиент забил и решил что все будет у него хорошо.
mdocs
88 — 30.06.11 — 15:08
(85) Надеются на то что 1С база не рухнет. Почему тогда в поставке нет удобного менеджера бэкапов например?
GoldenDawn
89 — 30.06.11 — 15:20
(83)это мешает распространению, если клиенту сообщить что софт будет нормально работать если соблюсти некоторое количество условий, клиент просто купит другой софт разработчик которого не афиширует такую необходимость
Aprobator
90 — 30.06.11 — 15:32
(89) это называется — Не обманешь не продашь. Мне, например, не известна софтина использующаяся для ведения какого либо учета, не требующая архивации данных. Правда, встречал софтины, со встроенной автоматической архивацией, но это было давно.
Капюшон
91 — 04.07.11 — 13:25
А я всё-таки оказался опытным и мудрым программистом. В сложившейся ситуации выбрал самое правильное решение — удалил ссылки на справочник номенклатура и потом сам справочник а дальше из cf файла загрузил его ) А люди еще говорили, Что я тупой и неопытный..
МишельЛагранж
92 — 04.07.11 — 13:31
(91) и как теперь думаете восстанавливать все ссылки на номенклатуру обратно?
И еще про хороший серверный UPS расскажите хозяйчикам…
Prikum
93 — 04.07.11 — 13:31
(91) И что все заработало?
Капюшон
94 — 04.07.11 — 13:54
(93)заработало. данных всеравно ведь не вернуть уже.
(92)а никак. их не восстановить. ну там документооборот с начала года только. ручками набьют — у них первичка есть.
Капюшон
95 — 04.07.11 — 13:55
(93)я хотел через редактирование файла сделать, но это у меня бы заняло дольше времени, Чем номенклатуру удалить из метаданных. Но еслиб сходу сумел разобраться, то пошел бы вашим путём. просто не видел смысла, поскольку сказали, что данных всёравно не вернуть
Содержание:
1. Возникновение ошибки «Таблица не найдена» в конфигурации системы 1С
Ошибка типа «Таблица не найдена…» в системе на базе 1С имеет несколько видов:
1. Если открыть регламентированные отчёты в 1С или журналы документации в конфигурации «1С: Бухгалтерия», после обновления системы, то начинает возникать окно, которое сообщает об ошибке, как демонстрируется ниже:
При этом, данная неполадка появляется у всех юзеров 1С, даже с разными базами данных.
2. Также, эта же ошибка может возникать в конфигурации системы 1С: Предприятие при некорректном выходе из системы, тогда её текст будет следующим: «Таблица не найдена: _Reference76».
Эта ошибка является ошибкой СУБД в 1С, а именно – SQL.
2. Устранение первого и второго вида ошибки «Таблица не найдена…» в конфигурации системы 1С Предприятие
Если кликнуть на «Подробнее», то получим следующее сообщение:
При возникновении ошибки «Таблица не найдена…» в конфигурации системы 1С: Бухгалтерия следует по порядку следовать пунктам ниже, один из них всегда устраняет неполадку:
· Обновить систему 1С до последней версии;
· Перейти в «Конфигуратор», при этом, другие юзеры 1С должны покинуть программу, кликнуть на панель «Администрирование 1С Предприятие» и выбрать пункт «Тестирование и исправление 1С», после чего, ошибка должна пропасть.
Наиболее логичным кажется проверить сохранность файла 1Сv8.1CD, пользуясь утилитой chdbfl.exe, однако, этот метод не отобразит ошибок и, в данном случае, следует действовать иначе.
Рассмотрим, по порядку, необходимый перечень действий:
1. Первым шагом нужно определить название таблицы «_Reference76» внутри информационной базы, для этого нужно воспользоваться внешней обработкой. То есть, по сути, эта таблица удалена, но являлась справочной. Из этого следует, что нужно узнать её исходный справочник. При помощи обработки делаем это, результатом чего найдено его название – «Спецификация номенклатуры».
2. Далее нужно поменять «Спецификация номенклатуры» на другой справочник. Это делается так:
· Меняем имя с «СпецификацияНоменклатуры» на имя «ЯСпецификацииНоменклатуры» — это делается, кликнув на имя справочника, переходом в меню, выбором пункта «Свойства», после чего внутри поля «Имя» меняем данные;
· Далее кликаем на имя справочника и избираем «Сортировать», после чего, справочники будут отсортированы по имени и наш справочник будет последним;
· Открываем такую же конфигурацию системы 1С, только в ней справочник «СпецификацииНоменклатуры» недолжен быть повреждён, запускаем её в режиме конфигуратора в 1С и копируем этот справочник, как показано ниже:
· Запускаем систему, где база была повреждена и вносим туда скопированный справочник;
· Далее кликаем на «Конфигурация», выбираем пункт «Поддержка» и переходим по «Настройка поддержки», где нужно два раза кликнуть по справочнику «ЯСпецификацииНоменклатуры», откроется следующее окно и нужно выбрать как на скриншоте ниже:
· Как только справочник будет снят с поддержки, дерево метаданных будет отображаться так:
3. Следующий шаг – убрать ссылки в прошлом справочнике и удалить его. Для этого кликаем по «ЯСпецификацииНоменклатуры» и выбираем «Удалить», появится следующее обращение о невозможности провести удаление, в котором нужно кликнуть «ОК»:
В панели со служебными сообщениями отобразится перечень из объектов, в которых содержаться ссылки на данный справочник. Этот перечень можно заменить при помощи ссылки из «ЯСпецификацииНоменклатуры» на «СпецификацииНоменклатуры»:
Для замены ссылки нужно дважды кликнуть по каждой строке перечня.
К примеру, выберем первый пункт перечня, если кликнуть на него два раза, то запустится объект, в котором будет ссылка на «ЯСпецификацииНоменклатуры»:
Открываем свойства объекта 1С, в которых хранится ссылка на наш справочник:
Внутри поля «Источник» можно наблюдать составной тип с нашим справочником. Меняем ссылку на «СпецификацииНоменклатуры» внутри инструмента по редакции составных типов. Далее делаем следующее, как на скриншоте ниже:
Все действия необходимо провести для каждого элемента перечня. Как только ссылки изменены – объект может быть удалён. Сохраним полученный результат в конфигурации.
Получили, что номенклатурный справочник «СпецификацииНоменклатуры» ссылается теперь на эту таблицу из базы 1С – «_Reference6845». Данные из справочника необходимо вернуть. Ошибка устранена.
Специалист компании «Кодерлайн»
Айдар Фархутдинов
0
— 23.05.2012 — 08:11
Это конец или можно что-то сделать
1
— 23.05.2012 — 08:16
Умер какой то справочник. Страшно подумать, в каком случае это происходит
2
— 23.05.2012 — 08:19
http://www.buh.ru/forum/thread.jsp?id=574253
3
— 23.05.2012 — 08:19
Думать не, флеха, бэкап нет!!!!!!!
4
— 23.05.2012 — 08:22
скуль база на флэхе Оо
5
— 23.05.2012 — 08:29
Молится надо было раньше. Теперь — только отпевать.
Попробовать можно посмотреть структуру данных, к какой табличке относится этот _Reference19. Может переживете без него, если это какой то классифиактор стран. Шансы на это — унижающе малы.
6
— 23.05.2012 — 09:19
копию базы на проверку/восстановление
7
— 23.05.2012 — 09:25
дальше уже смотреть по обстановке….
8
— 25.05.2012 — 09:57
Конфигуратор работает при ТИИ ошибка СУБД отсутствует ‘_Reference18’,при загрузке 1С Предприятия падает на отсутствии ‘_Reference19’, Есть архив двухнедельный там эти таблицы есть. Возможно ли их перенести?
9
— 25.05.2012 — 09:59
(8) база скл? в принципе да
10
— 25.05.2012 — 10:05
Да. Подскажите как, подобного опыта нет.
В Tool_1CD вижу экспорт в XML, а дальше?
11
— 25.05.2012 — 10:06
что в таблице выяснили?
12
— 25.05.2012 — 10:06
в той базе где она отсутствует, сделать такую же как в бекапе но пустую, будет работать?
13
— 25.05.2012 — 10:10
Создать каким образом, не в курсах.
14
— 25.05.2012 — 10:23
Подскажите пожалуйста.
15
— 25.05.2012 — 10:25
14-copoka > в Enterprise Manager
16
— 25.05.2012 — 10:29
<Table Name=»_REFERENCE18″>
<Fields>
<Field Name=»_IDRREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_VERSION» Type=»version» Length=»0″ Precision=»0″/>
<Field Name=»_MARKED» Type=»bool» Length=»0″ Precision=»0″/>
<Field Name=»_ISMETADATA» Type=»bool» Length=»0″ Precision=»0″/>
<Field Name=»_PARENTIDRREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_FOLDER» Type=»bool» Length=»0″ Precision=»0″/>
<Field Name=»_CODE» Type=»fixed string» Length=»9″ Precision=»0″/>
<Field Name=»_DESCRIPTION» Type=»string» Length=»50″ Precision=»0″/>
<Field Name=»_FLD474RREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_FLD475RREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_FLD476RREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_FLD477RREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_FLD478″ Type=»number» Length=»5″ Precision=»2″/>
<Field Name=»_FLD479RREF» Type=»binary» Length=»16″ Precision=»0″/>
</Fields>
<Records>
</Records>
</Table>
17
— 25.05.2012 — 10:30
<!—Файл сформирован программой Tool_1CD—>
<Table Name=»_REFERENCE19″>
<Fields>
<Field Name=»_IDRREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_VERSION» Type=»version» Length=»0″ Precision=»0″/>
<Field Name=»_MARKED» Type=»bool» Length=»0″ Precision=»0″/>
<Field Name=»_ISMETADATA» Type=»bool» Length=»0″ Precision=»0″/>
<Field Name=»_PARENTIDRREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_FOLDER» Type=»bool» Length=»0″ Precision=»0″/>
<Field Name=»_CODE» Type=»fixed string» Length=»9″ Precision=»0″/>
<Field Name=»_DESCRIPTION» Type=»string» Length=»150″ Precision=»0″/>
<Field Name=»_FLD481″ Type=»image» Length=»0″ Precision=»0″/>
<Field Name=»_FLD482RREF» Type=»binary» Length=»16″ Precision=»0″/>
<Field Name=»_FLD483″ Type=»memo» Length=»0″ Precision=»0″/>
<Field Name=»_FLD484″ Type=»memo» Length=»0″ Precision=»0″/>
</Fields>
<Records>
</Records>
</Table>
18
— 25.05.2012 — 10:34
INSERT INTO …
SELECT FROM …
19
— 25.05.2012 — 10:48
(17) попробуй такую же таблицу в текущей базе создать
с помощью ентерпрайз менеджера, заходишь и там находишь где добавить таблицу и добавляешь с такими же полями
20
— 25.05.2012 — 10:50
(18) ты щас наговоришь . Вообще то начинается с Create Table
21
— 25.05.2012 — 10:51
(20) зачем create table, это надо писать.
а так мышкой, добавить поле и так далее
22
— 25.05.2012 — 10:52
23
— 25.05.2012 — 10:53
24
— 25.05.2012 — 11:12
Ребята темный лес. Как програмуля обзывается.
25
— 25.05.2012 — 11:16
24-copoka > (15)
26
— 25.05.2012 — 11:17
(24) ну 2 раза уже название сказали.
27
— 25.05.2012 — 11:37
Спасибо проглядел
28
— 25.05.2012 — 21:32
Прграмму поставил самому открыть файл 8-ки не получилось.
29
— 25.05.2012 — 21:58
выложи куда-нибудь, текущую базу и бекап
30
— 25.05.2012 — 21:58
что за странный ник копока?
31
— 25.05.2012 — 23:08
Сорока.
Гл бух против присутствую перс данные клиентов-физ лиц
включая адреса и телефоны. Но спасибо.
32
— 27.05.2012 — 13:13
Спасибо огромное buval!!!!!!!!!!
Все получилось без SQL Server.
Сделал по http://infostart.ru/public/99809/!
33
— 27.05.2012 — 14:12
Вот только стандартная выгрузка через конфигуратор падает с
AppName: 1cv8.exe AppVer: 8.1.15.14 ModName: backend.dll
ModVer: 8.1.15.14 Offset: 002d5b21
Сегодня после обновления 1С:Бухгалтерии предприятия на версию 2.0.64.6, при открытии Регламентированных отчетов стала появляться ошибка следующего содержания:
<(5, 2)>: Таблица не найдена «Константы» >Константы КАК Константы
Причем ошибка появилась сразу на нескольких базах и у всех пользователей. Также эта ошибка выходила при просмотре регламентированных отчетов и журналов документов.
Следующие варианты помогли в разных случаях:
- Обновление платформы до актуальной версии
- Зайти в режим «Конфигуратор» (остальные пользователи при этом должны выйти из программы). Перейти в меню Администрирование -> Тестирование и исправление
- Проверка через chdbfl. Зайдите в папку, в которую у вас установлена 1С. Обычно это ‘C:Program Files1cv8’. Здесь вы увидите папки в названии которых присутствуют цифры, обозначающие номера версий платформы. Выберите папку с самой старшей версией (Например 8.3.8.2054): Найдите файл с названием chdbfl
Доброго времени суток, уважаемые читатели блога SoftMaker.kz. Сегодня мы поговорим, как побороть ошибку, возникающую
в файловой базе 1С при неправильном закрытии системы 1С:Предприятие, например при внезапном отключении света или
неправильной работе компьютера (работает и в случае, если
1С:Предприятие 8 установлено на MS SQL Server 2008 R2 Express).
Ошибка СУБД: Ошибка SQL: «Таблица не найдена: _Reference76» появлялась, когда производилось
тестирование и исправление информационной базы (ТиИ ИБ) при прохождении проверки логической целостности ИБ.
При попытке выгрузить ИБ Конфигуратор вылетал.
Проверка физической целостности файла 1Cv8.1CD с помощью утилиты chdbfl.exe
показало, что ошибок не обнаружено. Поэтому пришлось идти другим путём и получилось следующее:
Определяем как в базе называется таблица _Reference76 с помощью внешней обработки 1С
В случае ошибки СУБД: Ошибка SQL: Таблица не найдена _Reference76 сразу становится ясно, что была удалена
таблица «_Reference76» и из названия ясно, что это какой-то справочник. Но как теперь определить,
к какому именно справочнику таблица «_Reference76» относится, чтобы попытаться её восстановить?
Для этого можно написать небольшую обработку для выяснения названия:
В результате работы обработки выяснилось, что таблица «_Reference76» относится к справочнику «Спецификации номенклатуры».
Обработку для поиска соответствия названия справочников конфигурации 1С и их внутренних таблиц можно скачать
отсюда.
Заменяем справочник «Спецификации номенклатуры» на новый
Теперь заменим справочник «Спецификации номенклатуры» на новый. Для этого выполним следующие действия:
- Изменим наименование справочника «СпецификацииНоменклатуры» на «ЯСпецификацииНоменклатуры».
Нажмём правой кнопкой мыши на справочнике «СпецификацииНоменклатуры» и в контекстном меню выберем пункт
«Свойства» и в поле «Имя» изменим наименование. - Теперь отсортируем справочники в дереве метаданных по имени. Нажмём правой кнопкой мыши
на справочнике «СпецификацииНоменклатуры» и в контекстном меню выберем пункт
«Сортировать…». Cправочник «СпецификацииНоменклатуры» оказался в самом низу, нам это
пригодится в дальнейшем. - Теперь заменим справочник «Спецификации номенклатуры» на новый. Для этого нужна идентичная
конфигурация с неповреждённым справочником «Спецификации номенклатуры». Нужно открыть эту конфигурацию
в режиме «Конфигуратор» и выделить справочник «Спецификации номенклатуры» в дереве метаданных и
скопировать его (Ctrl+C).
«Конфигурация» | «Поддержка» | «Настройка поддержки». В дереве метаданных выберем справочник
«ЯСпецификацииНоменклатуры» и двойным щелчком мыши на справочнике откроем следующий диалог:
флажок «Установить для подчинённых объектов».
конфигурации выглядят следующим образом:
Убираем ссылки со старого справочника «Спецификации номенклатуры» и удаляем его
- Жмём правой кнопкой мыши на справочнике «ЯСпецификацииНоменклатуры» и в контекстном меню выбираем пункт
«Удалить». Появилось сообщение Конфигуратора: «Объект не может быть удален, так как на него имеются ссылки
в других объектах!»
Нажимаем на кнопку «ОК». В окне служебных сообщений видим список объектов, которые содержат в себе ссылки на
справочник «ЯСпецификацииНоменклатуры». Этот список поможет быстро заменить ссылки со справочника
«ЯСпецификацииНоменклатуры» на справочник «СпецификацииНоменклатуры». Приступим.
Чтобы заменить ссылки в объектах нажимаем на каждую строку списка двойным кликом.
Для примера возьмём первый элемент списка «ПодпискаНаСобытие.ПриУстановкеНовогоКодаСправочника.Источник»
После двойного клика на этом элементе, в дереве метаданных откроется объект и
в нём мы найдем ссылку на справочник «ЯСпецификацииНоменклатуры».
Два раза нажимаем левой кнопкой мыши, чтобы открыть свойство объекта, в котором содержится ссылка на
справочник «ЯСпецификацииНоменклатуры».
Как видно из вышеприведённого изображения в поле «Источник» содержится составной тип, в который входит и
справочник «ЯСпецификацииНоменклатуры». Заменим ссылку со справочника «ЯСпецификацииНоменклатуры»
на справочник «СпецификацииНоменклатуры» в диалоге редактирования составного типа данных.
Ссылка заменяется снятием флажка напротив справочника «ЯСпецификацииНоменклатуры» и
установкой флажка напротив справочника «СпецификацииНоменклатуры».
вышеприведённого списка.
Теперь новый справочник «СпецификацииНоменклатуры» ссылается на новую таблицу в базе 1С — _Reference6845.
Если в справочнике были какие-нибудь данные, то они уже уничтожены, поэтому нужно их восстановить.
Это можно сделать воспользовавшись советами статьи
Как выгрузить данные в идентичную конфигурацию 1С?
Если была удалена другая таблица, например _DOCUMENT, тогда нужно изменить обработку для поиска
соответствия названия документов конфигурации 1С и их внутренних таблиц, а шаги проделать те же самые.
Сегодня, после обновления 1С:Бухгалтерии предприятия, на версию 2.0.64.6, при открытии Регламентированных отчетов стала появляться ошибка следующего содержания:
<(5, 2)>: Таблица не найдена «Константы»
>Константы КАК Константы
Если нажать кнопку «Подробно», то получали ошибку:
<Обработка.ОнлайнСервисыРегламентированнойОтчетности.МодульОбъекта(772)>: Ошибка при вызове метода контекста (Выполнить)
Выборка = Запрос.Выполнить().Выбрать();
по причине:
<(5, 2)>: Таблица не найдена «Константы»
>Константы КАК Константы
Причем ошибка появилась сразу на нескольких базах и у всех пользователей. Также эта ошибка выходила при просмотре журнала документов Реализация товаров и услуг.
Решение проблемы
В результате было найдено два способа решения этой проблемы.
Способ №1
У клиента использовалась платформа 8.2.19.106, и проблема решилась обновлением до версии 8.3.5.1383
Способ №2
Необходимо зайти в режим «Конфигуратор» (остальные пользователи при этом должны выйти из программы). Перейти в меню Администрирование -> Тестирование и исправление.
После завершения процесса можно закрывать конфигуратор и пользоваться программой. Ошибка должна исчезнуть.
«В процессе обновления информационной базы произошла критическая ошибка»
Если вы видите такое сообщение при тестирование — Вам сюда
Началось всё тривиально, при очередном «Тестировании и исправлении информационной базы» БП 8.1 программа выдала ошибку
«Ошибка SQL Таблица не найдена ‘NNNNNNNN’» .
Особого значения не придал, ИБ база работает жалоб не поступает. Спокойно перевел базу на платформу 8.2.
Системный администратор предложил перевести с файловой версии на серверную и вот тут-то всё вспонилось.
— База не тестируется.
— Реструктуризация таблиц информационной базы не выполняется
(В процессе обновления информационной базы произошла критическая ошибка)
— Реструктуризация таблиц информационной базы не выполняется
Первое что пришло в голову тестирование chdbfl.exe, но чудес не произошло
(Ошибок не обнаружено)
Хорошо, сейчас выполню выгрузку базы в файл и далее загрузка в пустую. Ага, как бы не так.
Программа завершена аварийно. Приехали — ждите теперь серверный вариант — «Нет выгрузки, нет и загрузки».
Какая таблица отсутствует нашел из окна «В процессе обновления информационной базы произошла критическая ошибка» в нижней строке состояния программы. Эту таблицу я не использую, следовательно мне повезло- нет необходимости что-то восстанвливать. Но, в принципе, это может быть и справочник и документ. Тогда после восстановления, предполагаю, надо из архивной версии заполнять данные.
=============================================================================================
Критическую Ошибку я победил, всё по порядку:
1. Взял начальную установку конфигурации БП в фирме 1С и установил её себе (пустая база).
2. Выгрузил из начальной установки ИБ (пустой базы) конфигурацию в файл.
3. В ИБ с ошибкой (отсутствует таблица NNNNN) снял конфигурацию с поддержки и разрешил изменение.
Нашел, что это за плохой объект конфигурации и попробовал его удалить (рассказал ранее).
Программа выдала ссылки на этот объект. Зашел по этим ссылкам и удалил из них свой объект.
Далее удалил без помех свой объект и … очень важно !!!
— обновил конфигурацию базы
— тестировал с исправление ИБ
4. После тестирования загрузил конфигурацию из начальной установки ИБ и снова повторил загрузку в базу измененной
конфигурации и полное тестирование ИБ.
Примечание.
После загрузки конфигурации из начальной установки ИБ программа создала мой ошибочный объект
и установила конфигурацию снова на поддержку с запретом редактирования.
=============================================================================================
Успехов. Ни сбоев, ни критических ошибок.
В параметрах запроса пишу ЭтотОбъект.Пользователи.Ссылка
bless18 |
|
||
---|---|---|---|
|
Имеется запрос:
Код 1C v 8.х
При выполнении выдается ошибка Поле объекта не обнаружено (Ссылка) |
Yandex |
|
||
---|---|---|---|
|
E_Migachev |
|
||
---|---|---|---|
|
Этотобъект — это что? |
bless18 |
|
||
---|---|---|---|
|
Простите, код немного другой Код 1C v 8.х
И ошибка: Поле объекта не обнаружено (Ссылка) |
bless18 |
|
||
---|---|---|---|
|
Пользователи — это табличная часть обработки |
bless18 |
|
||
---|---|---|---|
|
Пользователи — это так же справочник, в котром хранятся имя пользователя и сотрудника |
bless18 |
|
||
---|---|---|---|
|
При дебаге Код 1C v 8.х
дает тип Код 1C v 8.х
|
E_Migachev |
|
||
---|---|---|---|
|
Тогда тебе нужно писать в запросе условие Пользователи.Ссылка В( &СписокПользоват) и далее выгружать из табличного поляполя список пользоватлейКод 1C v 8.х
|
bless18 |
|
||
---|---|---|---|
|
Попробовала, выдает ошибку: |
bless18 |
|
||
---|---|---|---|
|
Пользователи у меня ТЗ, в которой есть колонки:
ДатаВыполнения Исполнитель Пользователь А как параметр мне нужно передать пользователя системы Код 1C v 8.х
Система сообщает, что Ошибка при вызове метода контекста (Выполнить): {(12, 22)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля |
E_Migachev |
|
||
---|---|---|---|
|
Правильно что ругается, так как нужно писать: Пользователи.Ссылка В (&Ссылка) |
bless18 |
|
||
---|---|---|---|
|
Спасибо, заработало ))
Но в цикл заходить не хочет (( Хотя обхожу его по результатам запроса Код 1C v 8.х
|
E_Migachev |
|
||
---|---|---|---|
|
А чему равно Запрос.Выполнить().Выгрузить().Количество(); |
bless18 |
|
||
---|---|---|---|
|
Запрос.Выполнить().Выгрузить().Количество() |
E_Migachev |
|
||
---|---|---|---|
|
Значить либо нет данных к выборке, либо неправильно составлен запрос *09 |
bless18 |
|
||
---|---|---|---|
|
Если пишу |
E_Migachev |
|
||
---|---|---|---|
|
Правильно, Таблице результата у тебя 7 колонок, но строк 0. т.е. не данных соответствующих заданной выборке *11
Может так получится, попробуй *13: Код 1C v 8.х
|
bless18 |
|
||
---|---|---|---|
|
К сожалению не получается, выдается ошибка |
E_Migachev |
|
||
---|---|---|---|
|
ой, забыл по КАК |
bless18 |
|
||
---|---|---|---|
|
Странно, все равно в цикл не заходит. В чем же может быть дело? *09 |
E_Migachev |
|
||
---|---|---|---|
|
это значит что нет документов РаспределениеЗадачи в которых в табличном поле РаспределениеЗадачиСотрудникам в поле Исполнитель стоит пользователь из списка ссылка *09
А что за конфигурация? |
bless18 |
|
||
---|---|---|---|
|
конфигурация 1С:Предприятие 8.1 (8.1.9.57) |
E_Migachev |
|
||
---|---|---|---|
|
Это номер Платформы, причем очень устаревшей, уже давно есть — 8.1.15.14. обновиться бы лучше. |
bless18 |
|
||
---|---|---|---|
|
конфигурация 1С:Предприятие 8.1 (8.1.9.57) |
bless18 |
|
||
---|---|---|---|
|
Я пишу на этой конфигурации диплом. В компании, в которой я нахожусь, установили эту конфигурацию. Надо попросить, чтобы переставили. Вроде как здесь все на такой работают |
E_Migachev |
|
||
---|---|---|---|
|
Зайди Справка о программе, там первой строчкой буде твое 1С:Предприятие 8.1 (8.1.9.57) |
bless18 |
|
||
---|---|---|---|
|
Просто «Конфигурация» написано
Попробовала убрать в запросе параметры, все заработало. Видимо проблема все-таки в передаче параметра *09 Код 1C v 8.х
|
bless18 |
|
||
---|---|---|---|
|
Только через параметры запроса мне нужно получить пользователя, работающего с системой. Пользователь находится в справочнике Пользователи |
E_Migachev |
|
||
---|---|---|---|
|
В таком случае правильнее использовать запрос вида:
Код 1C v 8.х
Так как в левом соединении нет смысла — пользователи и так есть в реквизите Исполнитель И тепереь у тебя получается вообще по всем пользователям которые есть документах РаспределениеЗадачи! |
E_Migachev |
|
||
---|---|---|---|
|
Вопрос закрыт! |
Подсказка: Для быстрого поиска ответов — используйте ‘Поиск’ |