Подскажите плиз, что может быть за проблема: при формировании "Ведомости по товарам на складах" отображается информация "Деление на 0". Параллельно проблема при открытии карточки номенклатуры (служебное сообщение): Не удалось рассчитать коэффициент пересчета в кубические метры для единицы "м.куб.". Обратитесь к администратору. Я грешу на то что это всё взаимосвязано. Как исправить проблему? Изначально делали перенос из УТ 10 в УТ 11
{Форма.Форма(24)}: Ошибка при вызове метода контекста (Выполнить): {(8, 5)}: Поле не найдено "ОтчетОРозничныхПродажах.Ссылка.Дата" <<?>>ОтчетОРозничныхПродажах.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон Выборка = Запрос.Выполнить().Выбрать(); по причине: {(8, 5)}: Поле не найдено "ОтчетОРозничныхПродажах.Ссылка.Дата" <<?>>ОтчетОРозничныхПродажах.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон
Друзья, помогите, делаю простенький запрос к табличной части документа, а в результат он выдает: ТаблицаЗначений. Ее открываешь, а там собственно все данные которые нужны. Как сразу вытащить их? Запрос:
ВЫБРАТЬ ОтчетОРозничныхПродажах.Товары.( СУММА(Сумма), Контрагент, Контрагент.ТипЦенНаРозничныхТочках ) ИЗ Документ.ОтчетОРозничныхПродажах КАК ОтчетОРозничныхПродажах ГДЕ ОтчетОРозничныхПродажах.Дата МЕЖДУ &ДатаНач И &ДатаКон И ОтчетОРозничныхПродажах.Склад = &ТТ
СГРУППИРОВАТЬ ПО ОтчетОРозничныхПродажах.Товары.(Контрагент.ТипЦенНаРозничныхТочках, Контрагент)
Помогите выцепить запросом УИД Контрагента. Вот сам собственно сам запрос ниже, а как вытащить УИД, я понятия не имею. Заранее спасибо!
ВЫБРАТЬ ВзаиморасчетыСКонтрагентами.Регистратор.Контрагент КАК РегистраторКонтрагент, КонтактнаяИнформация.Объект.Ссылка, КонтактнаяИнформация.Поле2, КонтактнаяИнформация.Поле4, КонтактнаяИнформация.Поле6, КонтактнаяИнформация.Поле7
ИЗ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ВзаиморасчетыСКонтрагентами КАК ВзаиморасчетыСКонтрагентами ПО КонтактнаяИнформация.Объект.Ссылка = ВзаиморасчетыСКонтрагентами.Регистратор.Контрагент.Ссылка ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации ПО КонтактнаяИнформация.Вид.Ссылка = ВидыКонтактнойИнформации.Ссылка ГДЕ ВзаиморасчетыСКонтрагентами.Регистратор.Дата МЕЖДУ &ДатаНач И &ДатаКон И ВзаиморасчетыСКонтрагентами.Регистратор.Проведен И ВзаиморасчетыСКонтрагентами.Регистратор ССЫЛКА Документ.РеализацияТоваровУслуг И КонтактнаяИнформация.Вид.Ссылка = &Ссылка
СГРУППИРОВАТЬ ПО ВзаиморасчетыСКонтрагентами.Регистратор.Контрагент, КонтактнаяИнформация.Объект.Ссылка, КонтактнаяИнформация.Поле2, КонтактнаяИнформация.Поле4, КонтактнаяИнформация.Поле6, КонтактнаяИнформация.Поле7
Друзья, прошу помощь в решении вот такой проблемы. Собственно сабж: Есть регистр сведений "Анализ инвентаризаций". Есть обработка (см. картинку) При нажании на кнопку Начать пересчет, в регистр автоматически попадают выделенные позиции, при нажатии завершить устанавливается то кол-во которые указали при пересчете. Ситуация может быть такова, что некоторые позиции может потребоваться пересчитать ещё раз, но как только в отборе я ставлю номенклатуру, то ошибка у меня всплывает отбора. Вот код отбора:
Для каждого текНоменклатура из МН цикл СтруктураДляПоиска = Новый Структура("Номенклатура",текНоменклатура); МассивПустыхСтрок = Док.Товары.НайтиСтроки(СтруктураДляПоиска);
Для каждого Строка Из МассивПустыхСтрок Цикл Запись = НЗ.Добавить(); Запись.Док = ВыбДок; Запись.Пользователь = ПараметрыСеанса.ТекущийПользователь; Запись.ДатаНач = текДата; Запись.Адрес = Строка.Адрес; Запись.СерияНоменклатуры = Строка.СерияНоменклатуры; Запись.Номенклатура = Строка.Номенклатура; Запись.Количество = Строка.Количество;
КонецЦикла;
Реквизит МН это Массив
Запрос = новый Запрос("ВЫБРАТЬ РАЗЛИЧНЫЕ | АнализИнвентаризаций.Номенклатура |ИЗ | РегистрСведений.АнализИнвентаризаций КАК АнализИнвентаризаций |ГДЕ | АнализИнвентаризаций.Док = &Док | И АнализИнвентаризаций.Номенклатура В(&МН)");
Для каждого Строка из твН цикл Если втАН.Найти(Строка.Номенклатура,"Номенклатура") = неопределено тогда МН.Добавить(Строка.Номенклатура); КонецЕсли; КонецЦикла;
Если МН.Количество() = 0 тогда Если втАН.Количество() = 0 тогда Предупреждение("Не выбрана номенклатура для подсчета"); иначе Предупреждение("Выбранная номенклатура уже пересчитывается"); КонецЕсли;
Возврат; КонецЕсли;
твН просто переменная
Как сделать что бы при повторном пересчете, уже имеющияся запись в регистре перезаписывалась, а новая просто записывалась.
Для каждого Стр1 Из ТЗР Цикл НР = ТЗР.Колонки.Номенклатура; КР = ТЗР.Колонки.Количество; Для каждого Стр2 Из ТЗК Цикл НК = ТЗК.Колонки.Номенклатура; КК = ТЗК.Колонки.Количество; Если НК = НР и КК > КР Тогда Сообщить("Сработало"); Иначе Сообщить("Не сработало"); КонецЕсли; КонецЦикла; КонецЦикла;
В условии всегда выскакивает в "иначе". условие НК = НР почему то ЛОЖЬ, хотя должна быть ИСТИНА, а условие КК > КР выдаёт: {(1)}: Операции сравнения на больше-меньше допустимы только для значений совпадающих примитивных типов (Булево, Число, Строка, Дата).
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!