Здравствуйте уважаемый посетитель. К сожалению вы не были распознаны форумом как зарегистрированный пользователь. Для полноценного использования возможностей нашего форума вам необходимо зарегистрироваться. Если вы уже зарегистрированы на форуме, то вам необходимо пройти авторизацию, используя Ваш логин и пароль.
Создал базу с кодировкой "Cyrillic_General_CI_AS".
Загрузил туда dt. Запускаю. Получаю ошибку
Microsoft SQL Server Native Client 11.0: Cannot resolve collation conflict between "Cyrillic_General_CI_AS" and "Latin1_General_CI_AS" in UNION ALL operator occurring in SELECT statement column 3. HRESULT=80040E14, SQLSrvr: SQLSTATE=42000, state=1, Severity=10, native=451, line=1
ругается на выборку поля с неограниченной длинной. ПОДСТРОКА в запросе использую, не помогает. Изменить кодировку ALTER DATABASE на загруженной базе нельзя. Ладно, хорошо.
Удаляю, создаю новую базу с кодировкой "Latin1_General_CI_AS" Загружаю туда dt. Смотрю: кодировка снова стала "Cyrillic_General_CI_AS" Ошибку получаю ту же самую.
Загадка для меня, как это работает на источнике. Посмотреть нет возможности. Мне присылают только dt. Как такое починить?
Есть маршрутный лист на сегодня выделяеться жирным сколько нужно денег за него, а есть долги до сегодня вот бы их в одну строку а не все накладные с сумами. подскажите как реализовать,уже голову сломил) Если удалить само поле наклданая тогда да будет одна строка. но тут нужно имено которая жырная а остальные уже нет
Запрос = Новый Запрос(); Запрос.УстановитьПараметр("МассивОбъектов", МассивОбъектов); Запрос.Текст = "ВЫБРАТЬ | МаршрутныйЛистПродажи.Ссылка КАК Ссылка, | МаршрутныйЛистПродажи.Дата КАК ДатаДокумента, | МаршрутныйЛистПродажи.Номер КАК Номер, | МаршрутныйЛистПродажи.ДополнительнаяИнформация КАК ДополнительнаяИнформация, | МаршрутныйЛистПродажи.ГруппаКлиентов КАК ГруппаКлиентов |ИЗ | Документ.МаршрутныйЛистПродажи КАК МаршрутныйЛистПродажи |ГДЕ | МаршрутныйЛистПродажи.Ссылка В(&МассивОбъектов) |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | МаршрутныйЛистПродажиЗаказы.Ссылка КАК Ссылка, | МаршрутныйЛистПродажиЗаказы.РасходнаяНакладная КАК РасходнаяНакладная, | МаршрутныйЛистПродажиЗаказы.РасходнаяНакладная.Номер КАК НомерРН, | МаршрутныйЛистПродажиЗаказы.РасходнаяНакладная.Дата КАК ДатаРН, | МаршрутныйЛистПродажиЗаказы.РасходнаяНакладная.Вес КАК Вес, | МаршрутныйЛистПродажиЗаказы.РасходнаяНакладная.Объем КАК Объем, | МаршрутныйЛистПродажиЗаказы.РасходнаяНакладная.Контрагент КАК Контрагент, | 0 КАК СуммаДолга, | 1 КАК ПринадлежитМаршруту, | МаршрутныйЛистПродажиЗаказы.РасходнаяНакладная.СуммаДокумента КАК СуммаОтгрузки, | МаршрутныйЛистПродажиЗаказы.Ссылка.ГруппаКлиентов КАК ГруппаКлиентов |ПОМЕСТИТЬ ВТ_Маршрут |ИЗ | Документ.МаршрутныйЛистПродажи.Заказы КАК МаршрутныйЛистПродажиЗаказы |ГДЕ | МаршрутныйЛистПродажиЗаказы.Ссылка В(&МассивОбъектов) |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | Контрагенты.Ссылка КАК Контрагент, | МаршрутныйЛистПродажи.Ссылка КАК МЛист |ПОМЕСТИТЬ ВТ_КлиентыМЛиста |ИЗ | Справочник.Контрагенты КАК Контрагенты | ЛЕВОЕ СОЕДИНЕНИЕ Документ.МаршрутныйЛистПродажи КАК МаршрутныйЛистПродажи | ПО (МаршрутныйЛистПродажи.ГруппаКлиентов = Контрагенты.Родитель | ИЛИ МаршрутныйЛистПродажи.ГруппаКлиентов = Контрагенты.Родитель.Родитель | ИЛИ МаршрутныйЛистПродажи.ГруппаКлиентов = Контрагенты.Родитель.Родитель.Родитель | ИЛИ МаршрутныйЛистПродажи.ГруппаКлиентов = Контрагенты.Родитель.Родитель.Родитель.Родитель | ИЛИ МаршрутныйЛистПродажи.ГруппаКлиентов = Контрагенты.Родитель.Родитель.Родитель.Родитель.Родитель) |ГДЕ | Контрагенты.ЭтоГруппа = ЛОЖЬ | И МаршрутныйЛистПродажи.Ссылка В(&МассивОбъектов) |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | РасчетыСПокупателямиОстатки.Контрагент КАК Контрагент, | РасчетыСПокупателямиОстатки.Документ КАК Документ, | МАКСИМУМ(РасчетыСПокупателямиОстатки.СуммаОстаток) КАК СуммаОстаток, | СУММА(0) КАК Вес, | СУММА(0) КАК Объем, | СУММА(0) КАК ПринадлежитМаршруту, | СУММА(0) КАК СуммаОтгрузки, | ВТ_КлиентыМЛиста.МЛист КАК Ссылка |ПОМЕСТИТЬ ВТ_Долги |ИЗ | ВТ_КлиентыМЛиста КАК ВТ_КлиентыМЛиста | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСПокупателями.Остатки(, ) КАК РасчетыСПокупателямиОстатки | ПО ВТ_КлиентыМЛиста.Контрагент = РасчетыСПокупателямиОстатки.Контрагент | |СГРУППИРОВАТЬ ПО | РасчетыСПокупателямиОстатки.Контрагент, | РасчетыСПокупателямиОстатки.Документ, | ВТ_КлиентыМЛиста.МЛист |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТ_Маршрут.Ссылка КАК Ссылка, | ВТ_Маршрут.РасходнаяНакладная КАК РасходнаяНакладная, | СУММА(ВТ_Маршрут.Вес) КАК Вес, | СУММА(ВТ_Маршрут.Объем) КАК Объем, | ВТ_Маршрут.СуммаДолга КАК СуммаДолга, | ВТ_Маршрут.Контрагент КАК Контрагент, | ВТ_Маршрут.ПринадлежитМаршруту КАК ПринадлежитМаршруту, | ВТ_Маршрут.СуммаОтгрузки КАК СуммаОтгрузки |ПОМЕСТИТЬ ВТ |ИЗ | ВТ_Маршрут КАК ВТ_Маршрут | |СГРУППИРОВАТЬ ПО | ВТ_Маршрут.Ссылка, | ВТ_Маршрут.РасходнаяНакладная, | ВТ_Маршрут.Контрагент, | ВТ_Маршрут.СуммаДолга, | ВТ_Маршрут.ПринадлежитМаршруту, | ВТ_Маршрут.СуммаОтгрузки | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | ВТ_Долги.Ссылка, | ВТ_Долги.Документ, | ВТ_Долги.Вес, | ВТ_Долги.Объем, | ВТ_Долги.СуммаОстаток, | ВТ_Долги.Контрагент, | ВТ_Долги.ПринадлежитМаршруту, | ВТ_Долги.СуммаОтгрузки |ИЗ | ВТ_Долги КАК ВТ_Долги |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТ.Ссылка КАК Ссылка, | ВТ.Ссылка.Дата КАК ДатаДок, | ВТ.РасходнаяНакладная КАК РасходнаяНакладная, | СУММА(ВТ.Вес) КАК Вес, | СУММА(ВТ.Объем) КАК Объем, | СУММА(ВТ.СуммаДолга) КАК СуммаКОплате, | ВТ.Контрагент КАК Контрагент, | СУММА(ВТ.ПринадлежитМаршруту) КАК ПринадлежитМаршруту, | СУММА(ВТ.СуммаОтгрузки) КАК СуммаОтгрузки // | ВТ.РасходнаяНакладная.Дата КАК ДатаНакладной |ИЗ | ВТ КАК ВТ | |СГРУППИРОВАТЬ ПО | ВТ.Ссылка, | ВТ.РасходнаяНакладная, | ВТ.Контрагент, | ВТ.Ссылка.Дата | |УПОРЯДОЧИТЬ ПО | Ссылка, | Контрагент, // | ДатаНакладной УБЫВ, | РасходнаяНакладная УБЫВ";
Результат = Запрос.ВыполнитьПакет(); ВыборкаДокументов = Результат[0].Выбрать(); ТаблицаЗаказов = Результат[5].Выгрузить();
ТаблицаЗаказов.Колонки.Добавить("ДатаНакладной"); Для каждого СтрокаЗаказ Из ТаблицаЗаказов Цикл Попытка СтрокаЗаказ.ДатаНакладной = СтрокаЗаказ.РасходнаяНакладная.Дата; Исключение СтрокаЗаказ.ДатаНакладной = Дата(2020,01,01); КонецПопытки; КонецЦикла; ТаблицаЗаказов.Сортировать("Ссылка,Контрагент,ДатаНакладной Убыв,РасходнаяНакладная Убыв");
списокВидДок = Новый Соответствие; списокВидДок.Вставить(Тип("ДокументСсылка.РасходнаяНакладная"),"Расх.Накл. №"); списокВидДок.Вставить(Тип("ДокументСсылка.ПоступлениеВКассу"),"Пост. в Кассу №"); списокВидДок.Вставить(Тип("ДокументСсылка.ПоступлениеНаСчет"),"Пост. в Банк №"); списокВидДок.Вставить(Тип("ДокументСсылка.ПриходнаяНакладная"),"Возвр.Накл. №");
Пока ВыборкаДокументов.Следующий() Цикл ТекущийДокумент = ВыборкаДокументов.Ссылка;
Если НЕ ПервыйДокумент Тогда ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц(); КонецЕсли; ПервыйДокумент = Ложь;
Вес = 0; Объем = 0; СуммаОтгрузки=0; КвоНакладных=0; ЖирныйШрифт = Новый Шрифт(, , Истина); Обычный = Новый Шрифт(, , Ложь); НачКлиент = Справочники.Контрагенты.ПустаяСсылка(); ПерваяСтрока = Истина; Для каждого СтрокаЗаказ Из СтрокиЗаказы Цикл Если НЕ ЗначениеЗаполнено(СтрокаЗаказ.Контрагент) Тогда Продолжить; КонецЕсли; ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("Контрагент", СтрокаЗаказ.Контрагент); ПараметрыОтбора.Вставить("Ссылка",ВыборкаДокументов.Ссылка); НайденныеДолги = ТаблицаДолгиКлиентов.НайтиСтроки(ПараметрыОтбора); ДолгКлиента=0; Для каждого СтрокаДолга Из НайденныеДолги Цикл ДолгКлиента = СтрокаДолга.СуммаКОплате; КонецЦикла; //ДолгКлиента = ТаблицаДолгиКлиентов.Найти(СтрокаЗаказ.Контрагент,"Контрагент").СуммаКОплате; Если НЕ НачКлиент = СтрокаЗаказ.Контрагент И НЕ ПерваяСтрока Тогда ОбластьМакета.Параметры.Заполнить(Новый Структура("печКлиент,НомерНакладной,ДатаНакладной,СуммаКОплате")); ТабличныйДокумент.Вывести(ОбластьМакета);
Если СтрокаЗаказ.ПринадлежитМаршруту = 1 Тогда ОбластьМакета.Область("СтрокаТаблицы").Шрифт = ЖирныйШрифт; Иначе ОбластьМакета.Область("СтрокаТаблицы").Шрифт = Обычный; КонецЕсли;
1С:Предприятие 8.3.14.1854 Управление торговым предприятием для Украины", редакция 1.2. (1.2.69.2) Обычный формы
Имеется отчет на СКД, в котором данные выводятся по ряду группировок + в разрезе месяцев(колонки)
столкнулся с непонимаем как оформить ряд моментов при выводе данных
1. имеется колонка-ресурс "Кол-во абонентов" - мне надо чтобы эта колонка не выводилась в Общем итоге, т.к. здесь эти итоги не имеют смысла 2. как в заголовке колонки общего итога установить свое оформление (выделить и отцентрировать слово "Итого")
Подскажите пож-та какие есть способы решения этих задач Спасибо
Доброго дня Шановні. Маю питання - Чи є нормальна можливість В ЗАПИТІ відбирати записи по певному регістратору? Наводжу приклад: Маю регістр накопичень. Він веде запис приблизно з десяти документів (писаний до мене). Потрібно відібрати записи лише по одному документу (він же один із регістраторів). Резістр підтягую як "залишки та обороти". Так, я можу витягнути необхідне мені, при налаштуванні періодичності по регістратору, та задавши необхідну умову після строки ГДЕ... (наприклад "Регистратор ССЫЛКА Документ.КакойТоДокумент") Але хотілося б це зробити на етапі відбору записів з самого регістру, а не ставити умову на вже відыбрані запитом записи. Питання оптимізації.
Поправте або доповніть мене якщо я десь допустив помилку. Конструктивна критика вітається. Поради накшталп "перша ссилка в Гуглях" - ідіть лісом, там радять робити через умови.
Автор CapitalistOleg — 19.05.23, 11:27 — 13 комментариев
Доброго дня, коллеги. В этой статье, я хотел бы открыть обсуждения перехода из 1С на что-то, где платят более достойно и не так относятся к программистам. Предлагаю вам пару ссылок. Наверняка у большинства из вас мысли такие же
Я в 1С уже 13 лет и со всем, о чем говорит спикер я сталкивался. Были и хорошие компании. Крайне большая редкость.
Выучился на курсах на С#. Думал, мой богатый опыт будет интересен новым работодателям. Сначала попробовал в украинские компании. Оказалось, что для них 1С-ный опыт вообще ничего не значит. Максимум предлагают на трейни. А в большинстве случаев узнают про 1С и заканчивают разговор. Попробовал в зарубежные компании. Там наш опыт признается. Там смотрят, как ты умеешь писать алгоритмы. Но там я столкнулся с другой проблемой. Там обязательное требование, чтобы ты писал код при них в браузере. Без возможности запуска и отладки. Тут человеческий фактор. Не все умеют писать код под надзором. Задачи простейшие, на уровне школьных. Обработка коллекций. Но я забываю все на свете в таких условиях Путаю равно и не равно))
Английский язык. В украинских компаниях требование - upper-intermediate. В зарубежных попроще. Главное, чтоб вас понять можно было. Очень повезет, если интервьюер не нейтив-спикер. Понять его можно. Нейтивы же тараторят себе под нос, съедают слова. Добавьте сюда еще искажение его микрофона и ваших наушников. В общем понять их крайне сложно.
Какие у вас мысли на этот счет? Кто уже пытался. Давайте делиться опытом))
Платформа 8.3.12. УНФ для Грузии (ERP Solutions, Edition 1.6 (1.6.10.44)) Назначение расширения - дополнение
Номенклатура -> Добавить в расширение. Аналогично с Формой элемента и списка. Добавил реквизит. Добавил его на форму элемента. В форме списка добавил его в запрос СписокЗапасы, перетащил на форму. Запускаю В форме элемента он присутствует. На форме списка нет. В списке "Изменить форму" тоже нет. Да вообще в списке маловато реквизитов. Чтобы убедиться, что это та форма, подкрасил колонку Ед.изм. и свою. Запускаю Форма та. Колонка Ед.изм цветная, моей колонки нет. Добавил на форму еще колонку из имеющихся в СписокЗапасы. Запускаю, эта колонка отобразилась. Моей колонки нет. Создаю в расширении обработчик события ПриОткрытииПосле. Ставлю точку останова. Смотрю - Видимость моей колонки установлена.
1С:Предприятие 8.3 (8.3.19.1726) УТП для Украины, редакция 1.2. (1.2.43.1)
Где - то с конца апреля абсолютно рабочая обработка собственного авторства по нанесению маркеров торговых точек и маршрутов без всякого внесения в нее изменений перестала отображать маркеры. Я упростил задачу, убрал весь функционал и оставил только вывод одного маркера по фиксированным координатам. В 1с не отображается. а в браузере (что FireFox, что Chrome) - работает. Более того, продолжает работать весь функционал по прокладке маршрута. Версия платформы и УТП была опробована разная (но 8.3 и там и там).
Собственно, хотелось бы узнать, кто-то столкнулся с этим в последние дни? Если бы маркеры не работали в браузере, то был бы материал для поиска проблемы, а так непонятно, куда копать.
Если КолвоУд > 0 Тогда Сообщить("Видалено "+Имя +" " +Строка(КолвоУд)); КонецЕсли;
Возврат КолвоУд КонецФункции
допоможіть з кодом для ПроверкаВозможностиУдаления(ТекДокумент)
В СП НайтиПоСсылкам(<СписокСсылок>, <ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты>)
Возвращаемое значение: Тип: ТаблицаЗначений. Возвращает ссылки на найденные объекты в виде ТаблицаЗначений. Первая колонка - исходная ссылка. Вторая колонка - ссылка на объект, если найденная ссылка соответствует объектной таблице, или значение, олицетворяющее запись необъектной таблицы. Третья колонка - объект метаданных, которому соответствуют данные, в которых найдена ссылка.
Автор alex-l1904 — 05.05.23, 8:21 — 1 комментариев
Доброго дня, якщо треба знайти серед всіх типів документів дату найпершого з поміткою на видалення, пропоную варіант рішення.
ЗапросПервогоДокумента = Новый Запрос; ТекстЗапроса = ""; ПервыйВидДок = Истина;
Для Каждого ТедВидДок Из Документы Цикл
Имя = ТедВидДок.Пустаяссылка().Метаданные().Имя;
Если ПервыйВидДок тогда
ТекстЗапроса = ТекстЗапроса + "ВЫБРАТЬ | МИНИМУМ(Док.Дата) КАК Дата | Поместить ТаблДат |ИЗ | Документ."+Имя+" КАК Док | |ГДЕ | Док.ПометкаУдаления И Док.Дата < &текДата | | |ОБЪЕДИНИТЬ ВСЕ ";
ПервыйВидДок = Ложь;
Иначе ТекстЗапроса = ТекстЗапроса + "ВЫБРАТЬ | МИНИМУМ(Док.Дата) КАК Дата |ИЗ | Документ."+Имя+" КАК Док | |ГДЕ | Док.ПометкаУдаления И Док.Дата < &текДата | | |ОБЪЕДИНИТЬ ВСЕ ";
Дня доброго! Коли звертаєшся до регістру накопичень "ОстаткиИОбороты" в налаштуваннях (параметры виртуальной таблицы) Можна вказати: Дату початку відбору, дату кінця відбору, періодичність, тощо... Питання - з якого моменту запит почне збирати інформацію по регістру? (по ідеї від мершого запису, але це не точно) (симулюємо ситуацію коли умові відбору не вказано, маємо лише дату закінчення відбору, та періодичність по регістратору)
Добрий день. В базе есть Документ1, его создает один пользователь №1, подскажите, как отправить сообщение пользователю №2, о создании этого документа ?
Доброго времени суток. Платформа 8,3,22 Конфигурация УТП Доработаная замерла в 8,2,55 версии . Суть проблемs в том была файловая версия всё работало ( из слов заказчика) . А при смене файловой на серверную пересталм все документы отбивать оперативное время проведения. Остановимся на одном документе "Заказ поставщику". по разным организациям у разнызх пользовалей ставилось разное время. В константах нашёл время начало и окончания работы . интервал . Поигрался и был проигнорирован программой ( не дали изменения ни каких изменений). предполагаю что время как -то управляется sql севрером . Задача . сделать так чтобы все документы проводились например 6.00 ( утра ). Можно допилить по строке все докумеенты , но уверен что так не правильно и должно быть решение . Вопрос к знатокам . можно как-то это решить без изменения конфигурации . И если не сложно ткнуть ссылку почему смена клиент серверной работы существенно помеяло устой всей логики . Спасбио .
При оновленні конфігурації через підтримку пропонує починати оговлення з 1.2.53.1 Зробив усі оновлення на тестовій базі (крпії), вніс зміни і спробував оновити. Знову пропонує почати з 1.2.53.1
Добрый день. Стоит задача сделать интерактивную возможность разрешать/запрещать пользователям открывать различные отчеты. Думал сделать данный функционал через подписку на событие и проверку по справочнику, куда вносить данные по названию отчета и перечню пользователей с доступом. 1С 8.3.16.1659 УТ 2.3. В перечне подписок на событие есть событие ОтчетМенеджер.ОбработкаПолученияФормы. По смыслу вроде как подходит. При получении формы проверяю можно или нет пользователю открывать отчет и соответственно даю добро на открытие формы или нет. Но при отладке открытия отчета 1С-ка не прыгает в процедуру, описанную в обработчике. Где я просчитался и правильная ли моя логике в принципе?
есть форма там заполняется покупатель и у него есть машина которую тоже нужно создать, нужно чтобы при создании машины в форму уже справочника втягивался покупатель из формы документа( в справочники это хозяин)
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!