понедельник, 23 июля 2018 г.

Не отображается кнопка на форме

Если на форме документа не отображается команда объекта, то проверяем:
1) Права. Пользователю должна быть назначена Роль, которой установлены права (Просмотр) не только на команду объекта (Документа), но и на сам объект.
2) В командном интерфейсе формы для Роли должен быть установлен признак видимости.

В данном случае видимость дана всем ролям (не затемнённый чекбокс Видимость и установленный - Автовидимость) - ситуация по-умолчанию.

суббота, 19 ноября 2016 г.

1С. Внешняя обработка заполнения объекта

Понадобилось сделать обработку заполнения ТЧ документа ПостоянноеУдержаниеВПользуТретьихЛиц в ЗУП 3.0. Заполняться ТЧ должна физлицами по определенному отбору.
Пример обработки взял из конфы БСП 2.3.
Ну, список физлиц я, конечно, получил запросом, обработку подключил в справочник. А вот дальше возникла проблема: в форме списка команда отрабатывает, а в форме документа - нет. И точкой останова ведь ничего не поймать.
Сначала думал, что намудрил где-то в параметрах. Но потом понял, что вообще код модуля формы обработки не срабатывает. Гугл не дал результатов.

Стал разбираться, как вообще это работает. С документацией у 1С проблемы - наверняка есть где-то, но ведь ничего не найдешь. Ну, да ладно, придется ковырять 1С-ный код замудренный.

Итак, команды на форму добавляются в процедуре модуля формы ПриСозданииНаСервере():

// Обработчик подсистемы "Дополнительные отчеты и обработки".
ДополнительныеОтчетыИОбработки.ПриСозданииНаСервере(ЭтаФорма);

В результате в командах формы документа появляется следующий объект:
ЭтаФорма.Команды.КомандаДополнительнойОбработки со свойством:
ЭтаФорма.Команды.КомандаДополнительнойОбработки.Действие
Значение свойства - Подключаемый_ВыполнитьНазначаемуюКоманду
Т.е. подключаемая обработка должна запустить процедуру с именем Подключаемый_ВыполнитьНазначаемуюКоманду(Команда).
Ищем в модуле формы документа данную процедуру и.... понимаем, что ее там нет.
Вопрос к разработчикам 1С: а почему вы в данный документ не добавили эту процедуру?
Забыли что ли? Или данный документ категорически запрещается заполнять автоматом?
В общем выхода два:
1) Заполнять документ из формы списка;
2) Вносить изменения в конфу. В частности надо добавить 2 процедуры в модуль формы документа (копируем из БСП):
&НаКлиенте
Процедура Подключаемый_ВыполнитьНазначаемуюКоманду(Команда)
Если НЕ ДополнительныеОтчетыИОбработкиКлиент.ВыполнитьНазначаемуюКомандуНаКлиенте(ЭтотОбъект, Команда.Имя) Тогда
РезультатВыполнения = Неопределено;
ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(Команда.Имя, РезультатВыполнения);
ДополнительныеОтчетыИОбработкиКлиент.ПоказатьРезультатВыполненияКоманды(ЭтотОбъект, РезультатВыполнения);
КонецЕсли;
КонецПроцедуры

&НаСервере
Процедура ДополнительныеОтчетыИОбработкиВыполнитьНазначаемуюКомандуНаСервере(ИмяЭлемента, РезультатВыполнения)
ДополнительныеОтчетыИОбработки.ВыполнитьНазначаемуюКомандуНаСервере(ЭтотОбъект, ИмяЭлемента, РезультатВыполнения);
КонецПроцедуры

среда, 14 сентября 2016 г.

КЛАДР 1С

Для старых редакций продуктов КЛАДР - тут
Для новых редакций вместо КЛАДРа используется ФИАС - http://its.1c.ru/download/fias нужна регистрация на ИТС

пятница, 21 августа 2015 г.

Матрица Доступа Windows

Подсобрал информацию и доделал скрипт по получению матрицы доступа к папкам

$folder = "%Path-to-Folder%"
$array = gci $folder -Recurse | where {$_.extension -like ""}
$out = foreach($element in $array)
{
$s = get-acl $element.fullname

foreach($inherit in $s.Access)
    {
 $inherit | add-member -membertype noteproperty -name Path -value $element.fullname -passthru |
    select Path, IdentityReference, filesystemrights
 }
}
$out | Export-Csv -Encoding "Unicode" -Path "C:\Temp\AccessMatrix.csv" -Delimiter ";"

суббота, 13 декабря 2014 г.

HP Smart Array 212 Raid Controller error

После удаления 1 из массивов на данном контроллере сервер сказал bye-bye и лег.
Благо кластер, субботняя ночь, сервачок старый - ничего важного.
Однако кирпичиков я отложил.

Смотрим через iLo:
Циклический ребут и ошибка контроллера.
1783-slot 1 drive array controller failure command failure cmd=0h err=00h

Нагугливаем решение, хоть и не с первого раза. Ошибка кэшируюшего модуля.

Гасим сервер на несколько минут. Включаем - грузится ОСь.
А еще говорят "ХэПэ - бренд!!". ППЦ контроллер на лету не умеет с массивами работать...

пятница, 21 ноября 2014 г.

Как нас дурят в аптеках

Заходишь в аптеку, просишь лекарство от мокроты (муколитический препарат), а тебе говорят: "Вот Лазолван(сироп) хороший. Берите его!"
Цена - ~500р.
100 мл лекарства с активным веществом - амброксолом (7.5 мг в 1мл)

500р. за лекарство....
Oh....wait!

- А есть еще что-то из этой группы? - спрашиваю Я.
Фармацевт немного начинает мяться, ее напарница еще раз говорит, что Лазолван очень хорош.
Я быстренько гуглю на смартфоне, что еще есть Бромгексин, АЦЦ.
Спрашиваю их - АЦЦ стоит 380, Бромгексина нету...

И тут фармацевт говорит, что есть Амбробене.
Сравниваю Амбробене и Лазолван:
100 мл флакон, 7.5мг активного в-ва на 1мл, состав одинаковый. Хммм......это же одно и то же!
Цена: 500 Лазолван, 190 - Амбробене.

Вопрос: А в чем разница?
Ответ: Так лекарства разные компании выпускают.

И риторический вопрос: если это одно и то же, то зачем мне предлагать самое дорогое?

В общем аптека - это типичный бизнес. И перед походом за лекарством, которое прописал врач категорически советую заглянуть в интернет, посмотреть аналоги, выписать их на листик и спросить у фармацевта, имеются ли в наличии.
Если что-то и будет, то 99% что оно будет дешевле предложенного фармацевтом в первую очередь.