INFOSTART EVENT 2018 EDUCATION

Второй тур голосования за доклады.
Окончание 5 сентября.

Коробов Алексей | Генеральный директор | ООО "Корус Баланс"

«Управление бизнес-процессами предприятия и организация работы сотрудников»

Общие вопросы * Проблемы при автоматизации бизнес-процессов. * Проблемы при эксплуатации бизнес-процессов. * Человеческий фактор или может ли лень стать стимулом для внедрения и развития системы управления. * Как охватить весь спектр проблем предприятия и не захлебнуться. Взгляд на проблему со стороны разработчиков * Проблемы разработчиков при эксплуатации сложных гибко настраиваемых систем. Разработка в режиме предприятия? Возможно? Зачем? * Коллективная разработка ключ к развитию. * Проблемы оптимизации и скорости работы при универсальном подходе разработки. Программа автоматизации как живой организм. Сколько сил нужно чтобы вдохнуть в него жизнь? * Общее описание получившейся системы и взаимодействия ее подсистем. Описание потенциала подобных систем. Будут озвучены проблемы и вопросы автоматизации бизнес-процессов предприятия по каждому из тезисов, с которыми пришлось столкнуться на личном опыте. Описаны удачные способы решения или обходы проблем, примененные у клиентов.

1. akolychev 05.01.17 22:08 Сейчас в теме

Вопрос по обработке выборки данных для табличного документа

Заранее извиняюсь, если вопрос слишком глупый, но сам новичок, не могу понять как с этим справиться. Есть внешняя печатная форма трудового договора, выводящая табличный документ. Делаю запрос, помещаю все в табличный документ, но форматы дат отражаются не так как нужно, то есть с часами, минутами и секундами. Задать параметр через, например:
Макет.Параметры.ДатаРожденияРаботника = Формат(Выборка.ДатаРожденияРаботника,"ДЛФ=DD")) не очень хороший вариант в моем случае - документ имеет 2 макета, и какой то параметр одного может отсутствовать в другом, и тогда получаем "Поле объекта не обнаружено". Задать параметр в самом макете тоже не подходит - параметр может находится не в отдельной ячейке, и иметь тип Шаблон. Вопрос - можно ли какой то процедурой обработать данные выборки (те же форматы дат), до заполнения макета данными из выборки, и как?
Ответы
Сортировка: Древо
2. Healer 06.01.17 00:37 Сейчас в теме
Формат следует установить в свойствах ячейки с параметром "ДатаРожденияРаботника". Ну или проверить наличие параметра в табличном документе и если есть то вот так:
Макет.Параметры.ДатаРожденияРаботника = Формат(Выборка.ДатаРожденияРаботника,"ДЛФ=Д"));
3. akolychev 07.01.17 11:38 Сейчас в теме
(2) Параметр не в ячейке, он внутри текста. Так (Макет.Параметры.ДатаРожденияРаботника = Формат(Выборка.ДатаРожденияРаботника,"ДЛФ=Д")) я тоже пробовал, работает. Но вопрос, можно ли установить обработку форматов какой либо процедурой, чтоб наличие или отсутствие параметра в макете игнорировалось.
4. KRV_it 09.01.17 05:24 Сейчас в теме
(3) А если попробовать установку параметра в попытке? Просто для каждого макета свою попытку, тогда в ошибку вылетать не будет, и при нахождении этого параметра изменит формат.
6. akolychev 09.01.17 09:28 Сейчас в теме
(4) Пробовал, но есть свои минусы. Хотя пока именно на этом варианте я и остановился.
5. areavel 09.01.17 09:14 Сейчас в теме
Можно через переменную, а туда записывать тип строка.
7. akolychev 09.01.17 09:29 Сейчас в теме
Напишите ваше сообщение
(5) Поясните пожалуйста
8. areavel 09.01.17 09:37 Сейчас в теме
НовПеременная = Формат(Выборка.ДатаРожденияРаботника,"ДЛФ=Д"));
Если ЗначениеЗаполнено(НовПеременная) Тогда
Макет.Параметры.ДатаРожденияРаботника = НовПеременная;
КонецЕсли;
9. areavel 09.01.17 09:46 Сейчас в теме
у вас от чего зависит какой из макетов будет использоваться? от данных в документе?
10. Healer 09.01.17 12:29 Сейчас в теме
В запросе, из которого выполняется заполнение параметров шаблона, дату можно преобразовать в строку вида "30.01.2017" следующим образом:

ВЫБРАТЬ 
    ПОДСТРОКА("0123456789", МЕСЯЦ(СправочникФЛ.ДатаРождения) / 10 + 1, 1) 
    + ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, 6 * МЕСЯЦ(СправочникФЛ.ДатаРождения))) / 6 + 1, 1) 
    + "." 
    + ПОДСТРОКА("0123456789", ДЕНЬ(СправочникФЛ.ДатаРождения) / 10 + 1, 1) 
    + ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, 6 * ДЕНЬ(СправочникФЛ.ДатаРождения))) / 6 + 1, 1)
    + "." 
   + ПОДСТРОКА("0123456789", ГОД(СправочникФЛ.ДатаРождения) / 1000 + 1, 1) 
    + ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, ГОД(СправочникФЛ.ДатаРождения) * 0.06)) / 6 + 1, 1) 
    + ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, ГОД(СправочникФЛ.ДатаРождения) * 0.6)) / 6 + 1, 1) 
    + ПОДСТРОКА("0123456789", СЕКУНДА(ДОБАВИТЬКДАТЕ(ДАТАВРЕМЯ(1, 1, 1), СЕКУНДА, ГОД(СправочникФЛ.ДатаРождения) * 6)) / 6 + 1, 1) КАК ДатаРожденияРаботника
Показать
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Санкт-Петербург
Полный день

Удаленный программист 1С (от 800 до 1200 руб в час)
Санкт-Петербург
По совместительству

Программист 1С
Ростов-на-Дону
Полный день

Программист 1С
Москва
зарплата от 65 000 руб.
Полный день

Бизнес-аналитик 1С
Санкт-Петербург
Полный день