Теоретический тест на понимание материала 8 урока курса
В случае успешного решения данного Теоретического теста Вам на этой же странице будут предложены практические задания для самостоятельного выполнения. Мы настоятельно рекомендуем переходить к изучению 9 урока курса 1С 8.2 для начинающих только после успешной сдачи теста и выполнения практических заданий.
Будьте внимательны при решении теста! Если вы допустите ошибки, то сможете повторить попытку только через 1 час. В случае решения теста с ошибками на месте вопросов (на этой же странице) Вам будут показаны вопросы, в которых вы допустили ошибки, и Ваши неправильные ответы. В этом случае рекомендуется более внимательно изучить материалы 8 урока курса, так как вы усвоили материал не полностью.
Количество просмотров: 12511
Комментарии
Я завершил оформление теоретического теста 8 урока. Теперь вы можете получить домашнее задание по 8 уроку!
Добрый день! Тест я прошел, получил ДЗ. Все добавил и отредактировал. Со "сложным заданием" проблема - не могу понять как начать реализацию... В Модуле Формы Отчета Именинники не получается прописать условие вывода лет-год-года. Может быть создать реквизит Исполнилось в Справочнике Контакты, а затем путем условия прописать его автоматическое заполнение ЧисломПолныхЛет + "лет, год, года" (для моих однокашников - это упрощенная запись, реализация в 1С иная)? Владислав, помогите разобраться. Направьте на путь созидания. Заранее вам благодарен.
Для flexible111. Алгоритм следующий: 1 рисуем матрицу: по горизонтали года, а по вертикали десятки лет и выявляем закономерности использования окончаний. 2. Формируем условия при которых нужно использовать разные окончания. 3. до вывода нашего контакта (но после метода Заполнить, т.е. после строки ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);) проверяем сколько лет исполнится контакту и дописываем нужное окончание. Для этого можем использовать наш параметр Исполнится, просто запишем в него не числовое, а строковое значение примерно такого вида = ""+ВыборкаДетальныеЗаписи.Исполнится+" лет"; Как устанавливать значение параметра я показывал на 8 уроке. Надеюсь, что идея понятна.
Для Влад, flexible111. Хотел бы предложить, возможно, более лаконичный способ. В ячейке, предназначенной под значения "количество исполняемых лет", в Свойства-Макет-Заполнение вместо "Параметр" выбрать "Шаблон" и следующим образом: "<[Исполнится] [Лет]>", определить для даной ячейки два параметра. Таким образом параметр "Исполнится" и дальше будет заполнятся автоматически, а в параметр "Лет" в зависимости от определьонных нами условий уже самим вносить ножное из значений "год|года|лет".
Отлично!
Друзья, помогите пожалуйста с решением ДЗ пункт 4 подскажите направление
Для logist83. В комментариях к данному тесту мы как-раз уже обсуждали ход решения 4 задания.
Влад, я составил матрицу, определил условия при которых нужно использовать разные окончания, а вот составить текст программы не могу, помогите пожалуйста.
Напишу кратко, подробнее будет проще посмотреть после публикации мною базы с 8 уроком и выполненным домашним заданием. 1) перед кодом ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень()); вставляем проверку на окончания в исполнится, примерно такую Если Прав( ВыборкаДетальныеЗаписи.Исполнится,1)="1" Тогда //все даты 1, 21, 31 и т.д. именуются год 2) В макете создаем отдельный параметр исполнится; 3) Присваиваем этому параметру значение = Строка(ВыборкаДетальныеЗаписи.Исполнится) + " год";
Добрый день! Подскажите, пожалуйста, где можна найти хорошие практические задания?Как програмно в префикс номера вставить первые буквы реквизита документа "Склад"?Спасибо!
Для programista. А в чем сложность с префиксом? В модуле объекта любого документа есть предопределенная процедура ПриУстановкеНовогоНомера(СтандартнаяОбработка, Префикс). Параметр Префикс - это и есть устанавливаемый префикс. В данной процедуре вы можете проводить любые проверки (для какого склада документ, кто контрагент, сколько товаров продано и т.д.) и в зависимости от ситуации присваивать разные префиксы. Важно, что данная процедура будет присваивать "правильные" префиксы не только когда документы создаются в интерактивном режиме, но и при программном создании (например, с помощью обработок и т.д.).
Это понятно! Большое спасибо! А какую литературу Вы можете посоветовать по практическим заданиям?
Влад, а можно ли такой вариант: я делаю в макете 2 дополнительных "поля"ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");// там окончание "лет"областьДетальныхЗаписей2=Макет.ПолучитьОбласть("Детали_2"); // там окончание "года"областьДетальныхЗаписей3=Макет.ПолучитьОбласть("Детали_3") ;// там окончание "год" Дальше я перебираю именинников, как Вы и показывали, но помимо этого, делаю выборку по реквизиту ДРвыборка=справочники.Контакты.Выбрать();Пока ВыборкаДетальныеЗаписи.Следующий() и Выборка.Следующий() Цикл и теперь если остаток от деления на 10 больше пяти или равен нулю, то будет форма "лет", если от 1 до 5, то "года".Если (ГОД(ТекущаяДата())-ГОД(выборка.ДатаРождения)) %10 =5 ТогдаОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень());иначеесли (ГОД(ТекущаяДата())-ГОД(выборка.ДатаРождения))%10 < 5 и (ГОД(ТекущаяДата())-ГОД(выборка.ДатаРождения))%10 > 1 тогдаОбластьДетальныхЗаписей3.Параметры.Заполнить(ВыборкаДетальныеЗаписи);ТабДок.Вывести(ОбластьДетальныхЗаписей3, ВыборкаДетальныеЗаписи.Уровень());иначеОбластьДетальныхЗаписей2.Параметры.Заполнить(ВыборкаДетальныеЗаписи);ТабДок.Вывести(ОбластьДетальныхЗаписей2, ВыборкаДетальныеЗаписи.Уровень());КонецЕсли; КонецЦикла; Рационально ли?
Для Артема. Идею я понял, но назвать ее рациональной не получается. Зачем делать еще выборку ДРвыборка=справочники.Контакты.Выбрать(). У нас в запросе есть поле "Исполнится" в нем хранится сколько исполнится лет.Дальше нам просто нужно проанализировать данное число. Причем учеть варианты (у вас не учтено) 1 год, 11 лет.Дальше выводить можно в 2 параметра в макете (в 1 число, а во втором строку с наименованием год, лет и т.д.) либо в 1 строковый парамент примерно так ""+исполнится+" "+лет. Начинаем с пустой строки, чтобы переменная для данного параметра содержала строкове значение и количество лет системой автоматически привелось к строковому виду.
1) Заблокируйте возможность нажатия на кнопку добавить комментарий, если пользователь не вошел на сайт под своей учеткой - недосмотришь и введенный текст комментария очистится.2) Можно/нужно ли писать в комментарии свой код (хотя бы основные моменты)?
Добрый день, some1. У меня неавторизованные пользователи не могут писать комментарии. Дополнительный "сторонний аудит" сайта никогда не помешает. Спасибо.