Некоторые картинки не загружаются из РФ и РК, используйте VPN.

понедельник, 10 января 2022 г.

1СЗапрос Выбрать дубли по основному полю

Изначально в справочнике не должно было быть повторений по двум реквизитам, ни вместе, ни по отдельности, но при случайной проверке были выявлены события когда два элемента имеют одинаковый Реквизит1 и различный Реквизит2, для выявления такого казуса можно использовать запрос, в котором соединяем справочник на себя где Реквизит1=Реквизит1, а Реквизит2<>Реквизит2. Вроде все, но нет, т.к. выдача будет двойной, а т.к. нам не важно какой элемент будет выбран, то добавляем еще одно сравнение - Ссылка>Ссылка. Прошу обратить внимание, данное решение работает только на одном дубле, если их больше, то ситуация будет другой.


ВЫБРАТЬ

	Участники.НомерКарты КАК НомерКарты,

	Участники.НомерТелефона КАК НомерТелефона,

	Участники1.НомерТелефона КАК НомерТелефона1

ИЗ

	Справочник.Участники КАК Участники

		ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.Участники КАК Участники1

		ПО Участники.НомерКарты = Участники1.НомерКарты

			И Участники.НомерТелефона <> Участники1.НомерТелефона

			И Участники.Ссылка > Участники1.Ссылка

УПОРЯДОЧИТЬ ПО

	НомерКарты


понедельник, 3 января 2022 г.

Проект: Кормушка

 Случайно на помойке были увидены ящики из под элитных помидоров, помидоры не нужны, а вот ящики можно использовать




среда, 22 декабря 2021 г.

Notepad++ поменять местами колонки

 Если массив данных поддается одной логике, то процесс можно автоматизировать.

Задача стояла простая - есть 65К+ строк, "Имя;'номерТелефона;'НомерКарты", нужно представить данные так - "НомерКарты Имя". Это можно сделать при помощи Excel/Calc и прочих табличных программ, но на ПК кроме Notepad++ больше ничего нету. А Notepad++ поддерживает регулярные выражения.

В качестве поля поиска выступит: "(\w+);'(\w+);'(\w+)", т.к. нам известен шаблон, мы т.о. получим массив размерностью в три элемента и заменим его на нужные нам: "\3 \1", вот и все. За 15 сек программа решит задачу:

Данные до

Данные после

Обращаем внимание что "\w" - это не все до следующего разделителя ";", а "слово" с точкой запятой в конце. В моем случае почти на всех строках шаблон был именно такой, если же до точки запятой появится делитель, то схема не сработает.

1СОшибка УНФ не сохраняет начальный экран

Завел себе УНФ и не стал заморачиваться с предварительной настройкой, а просто синхронизировал с БП. Убрал начальную страницу настройки в разделе "Настройка начальной страницы", настроил панели под себя... И какого же было мое удивление, когда перезапустив базу я увидел начальную страницу О_О

Подумал может кэш, т.к. галки "завершить настройку" на странице нету. Оказалось - нет, кэш тут не при чем. Пошел копать дальше. Наткнулся на константу "Дата первого запуска", заполнена не была, установка проблему не решила. Полез разбираться, откуда идет вызов, в итоге нашел ОбщиеМодули.ИнформацияПРиЗапуске.ГлобальныеНастройки(). Здесь как раз идет опрос различных частей и устанавливается признак отображения страницы. Почитав код, нашел это:


Если Настройки.Показывать Тогда
	УстановитьПривилегированныйРежим(Истина);
	ЗаписьРегистра = РегистрыСведений.ПакетыИнформацииПриЗапуске.Получить(Новый Структура("Номер", 0));
	ПакетыСтраниц = ЗаписьРегистра.Состав.Получить();
	УстановитьПривилегированныйРежим(Ложь);
	Если ПакетыСтраниц = Неопределено Тогда
		Настройки.Показывать = Ложь;
	Иначе
		Информация = ПодготовитьПакетыСтраницКВыводу(ПакетыСтраниц, НачалоДня(ТекущаяДатаСеанса()));
		Если Информация.ПодготовленныеПакеты.Количество() = 0
			Или Информация.МинимальныйПриоритет = 100 Тогда
			Настройки.Показывать = Ложь;
		КонецЕсли;
	КонецЕсли;
КонецЕсли;

  

Открыл регистр "Пакеты информации при запуске", там только 1с запись со значением "0", установил отличное и получил значение Настройки.Показывать равным Ложь. Проверил - теперь открывается мой внешний вид.

воскресенье, 5 декабря 2021 г.

[Microsoft][ODBC Text Driver] The Microsoft Access database engine could not find

Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][ODBC Text Driver] The Microsoft Access database engine could not find the object 'FA_BTL_DAILY_REPORT 02_12.decode.CSV'. Make sure the object exists and that you spell its name and the path name correctly. If 'FA_BTL_DAILY_REPORT 02_12.decode.CSV' is not a local object, check your network connection or contact the server administrator.

воскресенье, 21 ноября 2021 г.

1С Нумерация в запросе (УФ)

На платформе 8.3 появилась давно возможность нумерации строк прямо в запросе, все хорошо, но нумерация идет от 1, а мне нужно было от нуля. Решение оказалось банальным, равно как и сортировка записей во временной таблице:

1С Выделить дробную часть

Функция Дроб(Число)
ДробнаяЧасть=Число-Цел(Число);
Возврат(ДробнаяЧасть)
КонецФункции;
 
 

пятница, 12 ноября 2021 г.

MSError [Microsoft][Драйвер ODBC Excel] Недопустимое использование Null


Использую драйвер ODBC для загрузки массивных таблиц в БД 1С. Таблица имеет 4 столбца все имеют "Общий" или "Текстовый" формат, но данные в столбцах это число, дата + время, длинное число (номер карты), длинное число (номер телефона). Все данные генерированные. На этапе тестирования я решил изменить дату с 30.12 на 01.11 и получил ошибку в сабже.

вторник, 9 ноября 2021 г.

Проект #34 RB2011 Ставим антенну от Aorus

 У клиента красиво развел кабель по новому офису, упаковал в шкаф, но оборудование не менялось  и получилось так, что RB2011 с WiFi был установлен в шкаф, из-за  чего сигнал был хуже ожидаемого. Когда пришла жалоба, мой взгляд упал на антенну от gigabyte z490 aorus elite ac

Проект #33 Компактный шкаф видеонаблюдения

Небольшой фотоотчет

Состав шкафа:

  • Регистратор -  DS-H208QA
  • Коммутатор - TP-LINK TL-SF1016D
  • Poe инжектор OSNOVO Midspan-8/P
  • БП UPS 120W SIMPLE БЛОК
  • DTM 1207 аккумулятор 7Ач 12В Delta
Коммутатор один из самых дешевых, идея хорошая, но мне не понравился, хоть и может работать от USB. А вот инжектор охонь, камеры IP, но без Poe, т.к. бюджет, такой вариант позволил красиво запитать камеры 12ю вольтами.

четверг, 30 сентября 2021 г.

 Лев Кассиль, "Противостояние"

Название книги, указывает на состояние небесных тел, по крайней мере в первой половине книги...

среда, 8 сентября 2021 г.

1С ЭтоНовый()

 Функция ЭтоНовыйОбъект(Объект)

Возврат Объект.ДополнительныеСвойства.Свойство("ЭтоНовый")

И Объект.ДополнительныеСвойства.ЭтоНовый;

КонецФункции



или


&НаКлиенте

Функция ЭтоНовый()

Возврат ТекущаяСсылкаНаФайл().Пустая();

КонецФункции

&НаКлиенте

Функция ТекущаяСсылкаНаФайл()

ОбъектФормы = ЭтотОбъект.Объект; // СправочникОбъект

Возврат ОбъектФормы.Ссылка;

КонецФункции


или

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Ключ.Пустая() тогда
Сообщить("ЭтоНовый")
Конецесли
Конецпроцедуры

воскресенье, 15 августа 2021 г.

СБИС3 Плагин не запускается с 1С через RemoteApp

 Сбис онлайн не работает с подписью без плагина. Я был к плагину равнодушен до момента обязательного перехода на третью версию, т.к. эта версия изначально устанавливалась для всех и порождала кучу процессов (до 5 на пользователя, суммарно около 300Мб ОЗУ). Даже на пользовательском ПК с отдельным администратором это бесило, а представьте что я чувствовал когда был вынужден установить его на терминальный сервер с 10 пользователями. 3 гигабайта ОЗУ из 20 уходило только на СБИС3 плагин, хотя им пользовались от силы 3 человека.