В этом разделе мы расскажем, как создать наше первое приложение. Для создания нового приложения мы будем использовать yiic (консольную утилиту), для генерации кода — Gii (мощный веб кодогенератор). Будем считать для удобства, что YiiRoot — это директория, куда установлен Yii, а WebRoot — корневая директория веб-сервера.
Запускаем yiic в консоли со следующими параметрами:
% YiiRoot/framework/yiic webapp WebRoot/testdrive
Примечание: При использовании yiic на Mac OS, Linux или Unix вам может понадобиться изменить права доступа для файла yiic , чтобы сделать его исполняемым. Альтернативный вариант запуска утилиты представлен ниже:
% cd WebRoot % php YiiRoot/framework/yiic.php webapp testdrive
В результате в директории WebRoot/testdrive будет создан каркас приложения.
Созданное приложение — хорошая отправная точка для добавления необходимого функционала, так как оно уже содержит все необходимые директории и файлы. Не написав ни единой строчки кода, мы уже можем протестировать наше первое Yii-приложение, перейдя в браузере по следующему URL:
Visual studio. Как создать проект. Первая программа. C++ для начинающих. Урок #1.
http://hostname/testdrive/index.php
Приложение содержит четыре страницы: главную, страницу «о проекте», страницу обратной связи и страницу авторизации. Страница обратной связи содержит форму для отправки вопросов и предложений, а страница авторизации позволяет пользователю аутентифицироваться и получить доступ к закрытой части сайта (см. рисунки ниже).

Страница обратной связи

Страница обратной связи с ошибками ввода

Страница обратной связи с успешно отправленной формой


Наше приложение имеет следующую структуру директорий. Подробное описание этой структуры можно найти в соглашениях.
testdrive/ index.php скрипт инициализации приложения index-test.php скрипт инициализации функциональных тестов assets/ содержит файлы ресурсов css/ содержит CSS-файлы images/ содержит картинки themes/ содержит темы оформления приложения protected/ содержит защищённые файлы приложения yiic скрипт yiic yiic.bat скрипт yiic для Windows yiic.php PHP-скрипт yiic commands/ содержит команды ‘yiic’ shell/ содержит команды ‘yiic shell’ components/ содержит компоненты для повторного использования Controller.php класс базового контроллера UserIdentity.php класс ‘UserIdentity’ для аутентификации config/ содержит конфигурационные файлы console.php файл конфигурации консоли main.php файл конфигурации веб-приложения test.php файл конфигурации функциональных тестов controllers/ содержит файлы классов контроллеров SiteController.php класс контроллера по умолчанию data/ содержит пример базы данных schema.mysql.sql схема БД для MySQL schema.sqlite.sql схема БД для SQLite testdrive.db файл БД для SQLite extensions/ содержит сторонние расширения messages/ содержит переведённые сообщения models/ содержит файлы классов моделей LoginForm.php модель формы для действия ‘login’ ContactForm.php модель формы для действия ‘contact’ runtime/ содержит временные файлы tests/ содержит тесты views/ содержит файлы представлений контроллеров и файлы макетов (layout) layouts/ содержит файлы представлений макетов main.php общая для всех страниц разметка column1.php разметка для страниц с одной колонкой column2.php разметка для страниц с двумя колонками site/ содержит файлы представлений для контроллера ‘site’ pages/ статические страницы about.php страница «о проекте» contact.php файл представления для действия ‘contact’ error.php файл представления для действия ‘error’ (отображение ошибок) index.php файл представления для действия ‘index’ login.php файл представления для действия ‘login’
Описанный выше генератор может создать файлы, необходимые при работе с системой контроля версий Git. Приведённая далее команда создаст все необходимые .gitignore (содержимое assets и runtime не должно оказаться в репозитории) и .gitkeep (важные директории включаем в репозиторий даже если они пустые):
Что делать с iPad 1? какие программы можно установить?
% YiiRoot/framework/yiic webapp WebRoot/testdrive git
Ещё одна поддерживаемая система контроля версий — Mercurial. Если вы пользуетесь ей, передайте третьим параметром hg . Данная возможность доступна с версии 1.1.11.
1. Соединение с базой данных ¶
Большинство веб-приложений используют базы данных, и наше приложение не исключение. Для использования базы данных необходимо объяснить приложению, как к ней подключиться. Это делается в конфигурационном файле WebRoot/testdrive/protected/config/main.php . Например, так:
return array( … ‘components’=>array( … ‘db’=>array( ‘connectionString’=>’sqlite:protected/data/testdrive.db’, ), ), … );
В приведённом выше коде указано, что приложение должно подключиться к базе данных SQLite WebRoot/testdrive/protected/data/testdrive.db как только это понадобится. Отметим, что база данных SQLite уже включена в сгенерированное приложение. В этой базе имеется только одна таблица tbl_user :
CREATE TABLE tbl_user ( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, username VARCHAR(128) NOT NULL, password VARCHAR(128) NOT NULL, email VARCHAR(128) NOT NULL );
Если вы хотите использовать базу данных MySQL, то вы можете воспользоваться файлом WebRoot/testdrive/protected/data/schema.mysql.sql для её создания.
Примечание: Для работы с базой данных Yii требуется расширение PHP PDO и соответствующий драйвер PDO. Для тестового приложения необходимо подключить расширения php_pdo и php_pdo_sqlite .
2. Реализация операций CRUD ¶
А теперь самое интересное. Мы бы хотели добавить операции CRUD (создание, чтение, обновление и удаление) для только что созданной таблицы tbl_user — это часто необходимо при разработке реальных приложений. Вместо ручного написания кода мы воспользуемся веб кодогенератором Gii .
Информация: Gii доступен, начиная с версии 1.1.2. Ранее для тех же целей использовался уже упомянутый yiic . Подробнее yiic описан в разделе «генерация CRUD при помощи yiic shell».
Настройка Gii
Для того чтобы использовать Gii, нужно отредактировать файл конфигурации приложения WebRoot/testdrive/protected/config/main.php :
return array( … ‘import’=>array( ‘application.models.*’, ‘application.components.*’, ), ‘modules’=>array( ‘gii’=>array( ‘class’=>’system.gii.GiiModule’, ‘password’=>’задайте свой пароль’, ), ), );
После этого перейдите по URL http://hostname/testdrive/index.php?r=gii и введите указанный в конфигурации пароль.
Генерация модели User
После входа зайдите в раздел Model Generator :

В поле Table Name введите tbl_user . В поле Model Class — User . Затем нажмите на кнопку Preview . Вы увидите новый файл, который будет сгенерирован. После нажатия кнопки Generate в protected/models будет создан файл User.php . Как будет описано далее в руководстве, класс модели User позволяет работать с данными в таблице tbl_user в стиле ООП.
Генерация CRUD
После генерации класса модели мы сгенерируем код, реализующий для неё операции CRUD. Выбираем Crud Generator :

В поле Model Class вводим User . В поле Controller ID — user (в нижнем регистре). Теперь нажимаем Preview и затем Generate . Генерация кода CRUD завершена.
Доступ к страницам CRUD
Давайте порадуемся нашим трудам, перейдя по следующему URL:
http://hostname/testdrive/index.php?r=user
Командный интерфейс в 1С
1. Пример создания подсистемы 2. Настройка командного интерфейса 3. Использование подсистем при разработке 4. Командный интерфейс системы в пользовательском режиме
Командный интерфейс системы 1С — это основной способ навигации пользователя по информационной базе.
За навигацию по базе отвечает объект Подсистемы, который находится в ветке Общие/Подсистемы конфигуратора. Когда он создает информационную базу, разработчик, при помощи подсистем, создает некоторую иерархическую структуру, включающую в себя объекты информационной базы.
Последовательность действий при создании подсистем следующая: 1. В дереве метаданных создается новая подсистема или подчиненная подсистема, добавляется картинка и делаются дополнительные настройки отображения; 2. Все объекты, которые по мнению разработчика или по ТЗ должны находиться в данном разделе привязываются к созданной подсистеме. 3.После создания подсистем, платформа автоматически сгенерирует пользовательский интерфейс.
1. Пример создания подсистемы

При создании командного интерфейса в 1С необходимо выполнить несколько достаточно простых действий.
Для создания простейшей подсистемы откроем систему 1С:Предприятие 8.3 в режиме конфигуратора, раскроем ветвь «Общие» в дереве метаданных, выделим ветку «Подсистемы» и нажмем «Добавить». После чего в открывшемся окне зададим имя и наименование объекта. Данная подсистема будет называться «Закупки». Также добавим картинку для этой подсистемы, чтобы подсистема более наглядно выглядела.
Далее для этой подсистемы сделаем две подчиненные подсистемы: «Документы», «Справочники», которые визуально будут разделять интерфейс и помогать пользователю ориентироваться в системе.
Создание подсистемы в конфигураторе 1С
Когда подсистема создана, и созданы объекты, которые должны в нее входить так же созданы, их необходимо добавить в нужную подсистему. Для этого можно зайти в свойства объекта, который должен быть добавлен либо же в состав подсистемы и поставить галочку около того объекта, который нам нужен.
2. Настройка командного интерфейса
При разработке интерфейса в системе 1С в руках разработчика есть ряд инструментов, помогающих произвести некоторые настройки командного интерфейса.
Инструменты настройки командного интерфейса
Редактор командного интерфейса конфигурации используется для настройки панели разделов. В нем указывается состав, порядок и видимость разделов для каждой роли.
Настройка панели разделов 1С
Редактор рабочей области начальной страницы используется для настройки начальной страницы пользователя. В данном редакторе добавляются формы, которые будут вынесены на начальную страницу. 
Настройка начальной страницы пользователя
Редактор командного интерфейса основного раздела позволяет задавать состав и порядок команд, а также их видимость для каждой роли.
Редактор командного интерфейса основного раздела системы 1С:Предприятие 8
Редактор интерфейса клиентского приложения позволяет задавать расположение панелей интерфейса.
Настройка расположения панелей интерфейса
При необходимости, можно задать доступность каждой из подсистем для определенной роли или пользователя для того, чтобы, например, менеджер по набору персонала не мог взаимодействовать с подсистемой «Продажи» и наоборот, чтобы продавец не видел подсистему «Закупки».
3. Использование подсистем при разработке
В платформе 1С:Предприятие подсистемы используются не только для упрощения навигации в пользовательском интерфейсе, но и при работе с объектами конфигурации. После создания подсистем и добавления в них объектов платформа позволяет фильтровать метаданные дерева объектов по Подсистемам. При этом имеется возможность управления: включать в отбор объекты подчиненных Подсистем и родительских Подсистем или нет. 
Настройка отбора по подсистемам в 1С
Также разделение объектов по Подсистемам создает удобство при назначении ролей.
Для каждой роли можно определить соответствующие права и указать, что данную роль можно построить исключительно по тем объектам, которые входят в указанные Подсистемы.
Настройка ролей в 1С:Предприятие 8
Классификацию объектов по Подсистемам можно использовать также при сравнении и объединении конфигураций. Платформа реализует возможность сравнивать и объединять объекты двух конфигураций, отфильтрованные по Подсистемам.
4. Командный интерфейс системы в пользовательском режиме
Командный интерфейс 1С 8.3 является управляемым. Это значит, что некоторые настройки пользователь может производить сам прямо в системе1С:Предприятие 8.3.
Чтобы произвести настройку командного интерфейса, пользователю необходимо найти пункт «Вид» на панели системных команд. Данный пункт содержит настройки панелей управляемого интерфейса.
Конечно, в пользовательском режиме не так много настроек, но даже то что они есть, позволяет реже вызывать программиста, который будет настраивать все в конфигураторе.
Настройки в пользовательском режиме включают в себя настройку трех панелей. Панель разделов включает, отключает и позволяет настроить доступность разделов (подсистем) при работе с программой. Панель навигации и панель действий позволяют настроить внешний вид этих панелей на командном интерфейсе.
Специалист компании «Кодерлайн» Айдар Фархутдинов
Вас могут заинтересовать следующие статьи:
94 [PROP_CODE] => TAGS2 [TITLE] => Вас могут заинтересовать следующие семинары: ) —> 95 [PROP_CODE] => TAGS [TITLE] => Вас могут заинтересовать следующие вебинары: ) —> Как сделать в 1С [1] => 1С: Конвертация данных [2] => Конвертация данных [3] => Обмен между базами [4] => Закрытие месяца [5] => Оценка задач [6] => Отчеты в 1С [7] => Моделирование [8] => HTTP [9] => Управление проектами [10] => БУ [11] => com-объекты [12] => 1С: WMS Управление складом [13] => РСБУ [14] => 1С: Сценарное тестирование [15] => Запросы 1С [16] => LINUX [17] => WEB [18] => Оптимизация [19] => 1С:Зарплата и Управление Персоналом [20] => Excel [21] => 1С: ERP [22] => ADO [23] => 1С:Управление производственным предприятием [24] => Внедрение [25] => Продажи [26] => Отчетность [27] => 1С: Розница [28] => 1С: CRM [29] => 1С:Бухгалтерия [30] => 1С:Комплексная автоматизация [31] => Производство [32] => Интеграция 1С [33] => Налоги [34] => Отпуск [35] => MS SQL Server [36] => Расширение конфигурации [37] => МСФО [38] => СКД [39] => Word [40] => WEB-сервисы 1С [41] => Внедрение ERP [42] => Перенос данных [43] => Торговое оборудование [44] => Лизинг [45] => 1С:Управление нашей фирмой [46] => Администрирование 1С [47] => 1С: Колледж [48] => Правила обмена [49] => 1С: Платформа ) —>
Источник: www.koderline.ru
1С регламентное задание, пример создания, настройка расписания
Регламентное задание в 1С — событие, процедура, которое повторяется в соответствии с заданным расписанием.
Как создать регламентное задание в 1С?
Рассмотрим пример: допустим необходимо создать регламентное задание, которое закрывает заказы покупателя раз в день (если они отгружены и плачены);
1. Необходимо создать общий модуль с экспортной процедурой:
- Заходим в конфигуратор, в дереве метаданных выбираем «Общие» -> «Общие модули»;
- Создаем модуль «_Закрыть заказы»;
- В свойствам модуля устанавливаем галочки «Сервер», «Внешнее соединение»;
- Внутри модуля создаем процедуру «Закрыть заказы» (которая устанавливает состояние закрыт для отгруженных и оплаченных заказов), после наименование процедуры добавляем слово «Экспорт» (Процедура ЗакрытьЗаказы () Экспорт);
2. Затем создаем само регламентное задание:
- Заходим в конфигуратор, в дереве метаданных выбираем «Общие» -> «Регламентные задания»;
- Создаем новое регламентное задание «_Закрытие заказов»;
- В свойствах задания прописываем имя метода «_ЗакрытьЗаказы.ЗакрытьЗаказы» — ссылка на недавно созданный модуль;
- В свойствах задания устанавливаем галочки в соответствии с рисунком ниже (рис 1);
- Переходим к настройке расписания (рис. 1, п.5)
Рис. 1 — создание регламентного задания
- Переходим на вкладку «Дневное», указываем время начала «11:00» (рис. 2) (по аналогии можно настроить недельное и месячное расписание, на соответствующих вкладках);
- Обновляем базу, все готово.
Источник: infofront.su