Хочу сразу предупредить, что некоторые вещи в статье, возможно, не совпадут с мнением остальных, поэтому не судите строго. Передам свой личный опыт.
Решил проводить разведку боем и написать органайзер + регистрацию трат денег.
Лучший способ изучения - это практика. Поэтому вооружившись телефоном на базе IOS, а именно IPHONE 5s и с мыслями о будущем сел за компьютер, открыл мануал, и через некоторое время был очень разочарован...
Как оказалось, для того, что бы поместить приложение на iphone необходимо сделать один из следующих вариантов:
1) Официально зарегистрировать, перепаковать, и поместить в appstore. Сразу отказался от этого варианта. Слишком долгий квест.
2) Сделать джейл брейк айфона, затем внести изменения в приложение 1С:Заказы для того, что бы можно было подключить разработанную мной конфигурацию.
Решил использовать второй вариант. Все сделал по инструкции. Подключил базу. Вроде бы все хорошо, но экран Iphone от дальнейшей разработки для этого телефона.
В итоге понял, что лучшим вариантом станет покупка телефона на базе ANDROID, так как эмуляторы android для windows меня не впечатлили, да и хотелось использовать конфигурацию в повседневной жизни.
Выбор пал на GALAXY NOTE 3 LTE. Мне понравилось то, что он имеет большой дисплей, скоростной процессор, возможность работы с пером. О всех преимуществах этого можно почитать в интернете ;) Покупкой был доволен. После этого IPHONE отдал жене, потому как понял, что функционал важнее бренда. Ну это сугубо ИМХО.
Итак. Вернемся к истории...
"Ура. Телефон имеется, осталось еще немного приготовлений" - подумал я и ринулся в бой. Скачал мобильную платформу 1с с расширением apk. Установил. Далее в компонентах windows 7 включил IIS сервер. Связал в конфигураторе IIS и 1С выбрав соответствующий каталог. Важным шагом было пробросить порты на роутере. Хотелось обновлять конфигурацию на телефоне с помощью Internet. Очень удобно.
И разработка теперь выглядит так : я "конфигурирую 1с" на компьютер, нажимаю кнопку "запустить мобильное приложение", 1С на телефоне перезапускается и обновляется. И ВУАЛЯ. Но конфигурация еще не разработана . Поэтому все по порядку.
Теперь буду создавать объекты. Общая концепция ясна. Открыл дерево метаданных, выбрал назначение - "Мобильное устройство" в свойствах конфигурации и ужаснулся.
Большое количество объектов метаданных были неактивные. Но я решил, во что бы то не стало, написать свое первое мобильное приложение используя те возможности, которые доступны. Забегая вперед хочу сказать, что это было ИСПЫТАНИЕ. Когда привыкаешь к определенному функционалу вырабатываешь определенную стратегию разработки, и при ограничениях чувствуешь себя... чувствуешь себя... механиком по ремонту автомобилей!!!, у которого забрали молоток и набор головок. Остались ключи и кувалда. В принципе можно обойтись и этим, но засовывать рожковый ключ в технологическое отверстие не всегда удобно, а иногда и нецелесообразно.
Опять отвлекся)) Продолжим.
Приступим к созданию объектов.
Первым шагом было создание справочника "Органайзер". Проблемой для меня стало заполнение табличной части "Календарь", но все же нашел решение.
Главным разочарованием (на мой взгляд) стало то, что "разукрашивание" таблицы значений было возможно только средствами встроенных возможностей "Условное форматирование". Доступа к оформлению отдельных ячеек таблицы с помощью встроенного языка я так и не нашел, поэтому принял решение оформлять по максимуму тем, что имелось. Задал с десяток правил оформления.
Когда закончил с клаендарем и начал по индексам получать строки и значения ячеек очень удивился, что если перезаполнять таблицу значений, то индекс строки меняется, пока не закроешь форму полностью (т.е. 5 строк с датами имеем 0,1,2,3,4, после очистки таблицы строка которая должна быть с индексом 0 имеет индекс 5). Может быть я делал что-то не так, опыта в разработке управляемых форм не очень много, но вышел из ситуации созданием дополнительной формы с переключением периодов.
Получилась мини-конфигурация.
То что получилось - выкладываю на общее обозрение.
Думаю, что новичкам в управляемых формах, вроде меня , будет полезно посмотреть, или даже продолжить работу, оптимизировать работу под свой телефон.
К сожалению на других телефонах не тестировал менее производительным процессором и меньшим дисплеем, но это решается непосредственно в конфигурации.
PS: Только сильно не пинайте :))
29.12.2014
Добавил функционал к программе: TODO и расширенный TODO. Немного улучшен интерфейс.
Постепенно буду дорабатывать и увеличивать функционал.