Архив рубрики: 1C

Разработки на платформе 1С

Поиск документа 1С по номеру документа

В некоторых видах документов, которые имеют периодическую нумерацию, например РеализацияТоваровИУслуг, при поиске документа по номеру, нужно указывать дату (период), к которому этот документ относится. Мелочь, а 15 минут потратил, на то чтоб понять почему не возвращает без этого параметра ссылку на документ 😉

	док= Документы.РеализацияТоваров.НайтиПоНомеру("ИП00-008198",ТекущаяДата());
	сообщить(док);

Работа с MySQL из 1С в среде Windows

Для работы необходимо предварительно установить среду Visual studio 2015 redistributable и ODBC драйвер Mysql

Далее работаем из 1С с драйвером на прямую:

1) Установка соединения:

ИмяODBC = "noc.уцкаука.ru";
ИмяБазы = "ыаукаыук";
ИмяПользователя = "укаыука";
Пароль = "ыукаыука";

Connection = Новый COMОбъект("ADODB.Connection");
СтрокаПодключения = "DRIVER={MySQL ODBC 8.0 Unicode Driver};DATABASE=" + ИмяБазы + ";PWD=" + Пароль + ";PORT=3306;SERVER=" + ИмяODBC + ";UID=" + ИмяПользователя + ";";
Connection.Open(СокрЛП(СтрокаПодключения));

Выборка:

Запрос="select * from users";
Table = Connection.Execute(Запрос); 
Пока Table.EOF() = 0 Цикл 
	Сообщить(Table.Fields("login").Value); 
	Table.MoveNext();
КонецЦикла;
Table.Close();

Выполнение запроса:

		Запрос="insert into checks_1c (id,docnum,dt,goods,cost,seller,inn,kassa,type_pay,type_sell,result,cnt,summ) values (null,'"+Документ.Номер+"',now(),'"+ном+"',"+цена+",'"+продавец+"','"+инн+"',"+касса+","+ТипОплаты+","+ВидЧека+",9,"+количество+","+сумма+")";
		//Сообщить(Запрос);
		РезультатЗапроса = Connection.Execute(Запрос);

Обзор Атол 90Ф. Работа с 1С

Довелось давеча устанавливать и настраивать онлайн кассу Атол 90Ф, проданную одному  предпринимателю Ростелекомом. 

Описание кассы и функциональные возможности, вполне можно нагуглить, потому начнем сразу с описания боли.

Боль первая: касса оказалась с прошивкой от Февраля 2017 (на момент написания статьи — 1 Августа 2018). Как следствие — зарегистрировать кассу при помощи последних версий драйверов не удается — ругаются на «нет необходимых реквизитов». Пришлось ставить древние драйвера версии 8.14, и регистрировать кассу при помощи их.

Боль вторая: как оказалось, работа онлайн кассы для работы со внешним ПО заблокирована заводским кодом защиты №1. В свое время Атол сначала планировал разрешить работу с ПО, затем передумал по маркетинговым соображениям, затем снова передумал (когда Атол 90Ф сняли с производства) и стал раздавать кода защиты всем желающим, затем снова передумал и стал раздавать коды защиты только через некоторые сервисные центры. Обращение за кодом защиты в Ростелеком ничего не дало — мурыжили и тянули время три дня, в итоге сказали «не умеем, не можем». Пришлось обратиться в сторонний сервисный центр АРТОЛ35 и попросить чтоб дали ключ там. Цена вопроса — 500р. В итоге работа со сторонним ПО (читай с 1С) разблокирована.  Для Розницы 2.2 можно ставить или драйвер АТОЛ «С передачей данных», там в списке драйверов АТОЛ90Ф присутствует, или ветку 9х, там нужно выставлять АТОЛ 11Ф.

Боль третья: собственно из-за этой боли возникла как раз боль номер 2. А именно, с клавиатуры самой кассы чеки конечно выбивать можно… Но только со шпаргалкой. Ибо запомнить все последовательности нажатий кнопок для выбивания чека, закрытия — открытия смены, отмены чека и т.п. просто не реально. Интерфейс работы с кассой разрабатывался не для людей. Не знаю для кого. 

1с и работа в Linux

Попробовал поработать в 1С в конфигураторе и в релизе под Ubuntu 18.4 Давно хотел, да всё собраться не мог. Ну что могу сказать? Сыровато.. Рандомно вылетает конфигуратор с не сохраненной работой. Теряется фокус окон. Иногда не открывается меню. В редакторе конфигуратора иногда курсор становится не видимым. И это спустя сколько лет как работу под Linux озвучили?

Работать конечно можно…. при нужде.