Истинная механика чудес
В книгах, в прессе и в кинофильмах на компьютерные темы с невероятным размахом расписываются фантастические возможности как вычислительной техники, так и людей, с ней работающих. Однако стоит установить все это богатство на собственный компьютер, как обещанная магия куда-то улетучивается. Как-то сложно принять тот простой факт, что любое оборудование является всего-навсего оборудованием и способно раскрыть все свои возможности только в руках понимающего человека. В особенности, если речь идет об индивидуальных тонкостях, разнящихся от человека к человеку.
В разделе, посвященном модулю ДНЕВНИК, персонального электронного секретаря Microsoft Outlook, я упоминал о том, что средствами этой программы практически ничего не стоит организовать, например, оплату труда исходя из почасовой ставки. Однако в подробности вдаваться не стал. Так вот, сие было сделано целенаправленно, ибо понять этот механизм без подробного его рассмотрения невозможно. Однако теперь, когда основные характеристики Microsoft Outlook перестали быть секретом, настала пора разобраться с внутренней механикой той самой магии, с помощью которой Microsoft Outlook значительно выделяется среди других программ аналогичного характера.
С самого начала следует обратить внимание на тот факт, что внешняя разнообразность Microsoft Outlook базируется на общем фундаменте, имя которому — таблица. Нельзя сказать, что Microsoft Outlook это только таблицы, однако нельзя также и забывать, что любая современная база данных есть не что иное, как несколько таблиц, объединенных некоторым количеством разнообразных связей. Переход к табличному представлению позволяет более наглядно понять тот факт, что любое поле Microsoft Outlook на самом деле является обычным полем обычной таблицы. Возьмите, к примеру, тот же ДНЕВНИК, активизируйте меню ВИД, раскройте в нем список ТЕКУЩЕЕ ПРЕДСТАВЛЕНИЕ и выберите вариант СПИСОК ЭЛЕМЕНТОВ. Указанный модуль переменит свое представление и примет вид самой обычной таблицы. Названия полей становятся наименованиями столбцов, а записи дневника — строками таблицы. Не составляет труда заметить, что табличный вид чрезвычайно информативен. В частности, программа по умолчанию отслеживает даже такие характеристики, как время начала работы с каждым конкретным документом и длительность этой работы. В плане приведенного выше примера, на основании даже одного поля " Длительность" и опираясь на идеологию электронной таблицы, теоретически, ничего не стоит ввести еще один столбец, в котором набрать простую формулу умножения длительности на почасовую ставку.
Теперь давайте познакомимся с практической стороной данного вопроса. Для начала необходимо создать новый столбец. Для этого обратимся в системное меню ВИД и выберем режим ОТОБРАЖАТЬ ПОЛЯ. Это вызывает на экран окно специализированного мастера. Данный мастер состоит из двух частей. Слева — поля, которые есть, но которые не отражаются в таблице, а справа — те, которые отражаются. С помощью экранных кнопок " ДОБАВИТЬ" и " УДАЛИТЬ" пользователь имеет возможность перебрасывать наименования полей между этими частями. Однако, кроме имеющихся полей, можно создавать и свои собственные. Это делается посредством экранной кнопки " НОВОЕ ПОЛЕ". Ее нажатие активизирует другой мастер, который, собственно, и выполняет всю работу. Его поле " Имя" определяет наименование вновь создаваемого столбца. Естественно, его пользователь задает сам. Второе поле, " Тип", определяет тип содержимого этого столбца. Оно является полем с выпадающим списком, содержащим все типы, какие только можно создать в рамках Microsoft Outlook. Всего существует одиннадцать типов, от булевского (Да/Нет) до вычисляемых с помощью математических выражений. Выберем вариант " Формула". Мастер несколько видоизменяется, и третьим полем становится поле " Формула", в котором эта самая формула и задается. Теоретически, ее можно набрать с клавиатуры непосредственно в поле ввода, однако рациональнее заставить поработать на себя построителя выражений. Он, как добрый джин, возникает каждый раз, когда нажимается экранная кнопка " Изменить". В появившемся окне вы вольны построить все, что посчитаете нужным. С помощью кнопки " Поле" и связанного с ней выпадающего списка выбирается конкретное поле, значение которого будет использовано как величина в выражении. Аналогичным образом работает расположенная рядом экранная кнопка " Функция", только за ней скрывается полный перечень допустимых функций, от общих (типа сложения или умножения) до специализированных (например, финансовых). Манипулировать ими чрезвычайно просто. Помните, как в школе: "А" плюс "Б"... только вместо обезличенных переменных вставляются конкретные поля. В данном примере берем поле " Длительность" и умножаем его на одну тысячу (совершенно неважно чего). Пусть это будут новые европейские евро. Далее остается только несколько раз нажать " ОК", по мере того, как станут исчезать окна мастеров. В результате, в первоначальной таблице появляется дополнительный столбец, я назвал его " Cashe" (см. рис. 4), в котором отображаются какие-то цифры. Исходя из заданной формулы, они означают размер счета, который можно было бы выставить из затрат времени на работу с каждым документом и ставки одна тысяча евро в минуту. Дело в том, что содержимое поля " Длительность" задается в минутах. Хотя простым математическим действием минуты можно превратить в часы.
Из представленного примера следует, как минимум, один вывод — с помощью дополнительных полей пользователь получает возможность задавать любые контрольные параметры, от простых пометок, типа выполнил — не выполнил, до достаточно сложных, вычисляемых с использованием множества параметров. Дополнительные поля могут иметь и другое применение, например, для принудительного задания определенного значения какого-нибудь значимого поля. Предположим, один раз в квартал вы собираете определенных сотрудников на совещание, которое проводится всегда в одном и том же месте. Пусть это будет Президент-отель в Вашингтоне (округ Колумбия, США). Допустим, того требует традиция. Эту информацию можно каждый раз вводить вручную, однако значительно изящнее составить выражение, заполняющее соответствующее поле указанной информацией каждый раз, когда создается очередная запись о проведении собрания, и это как раз именно то, традиционное, собрание.
Теперь, когда механизм задания и функционирования полей в общем и целом понятен, я хочу обратить ваше внимание на важные детали, знание которых имеет самое непосредственное влияние на конечный результат. Самой первой тонкостью является форматирование результата в новом столбце. Оно осуществляется путем выбора конкретного значения поля " Формат" в окне мастера " Новое поле". Правда, не беда, если вы забыли это сделать в процессе создания нового поля или даже впоследствии передумали и пожелали переменить его. Прямо в табличном представлении модуля ДНЕВНИК наведите маркер мыши на заголовок столбца (то есть на квадратик с наименованием столбца) и нажмите на правую клавишу мыши. Появится контекстно-зависимое меню, в котором, помимо всего прочего, есть режим " Форматировать столбцы". Если его выбрать, то Microsoft Outlook выведет на экран своего рода учетную карточку этого столбца.
Это универсальный мастер. В левом его окне представлен полный перечень полей, которые выведены на экран для конкретного модуля. В данном случае это ДНЕВНИК. Выбирая наименование конкретного столбца, вы получаете доступ к настройкам его внешнего вида. В зависимости от типа поля, правая часть мастера несколько видоизменяется. Правда, эти изменения ограничиваются типом данных. Заданный при создании столбца формат полностью переменить нельзя. Однако можно манипулировать с наименованием столбца, с выравниванием и с шириной самого поля. После нажатия " ОК" все сделанные изменения вступают в силу.
Теперь следует подробнее пройтись по типам данных, которые применяются в Microsoft Outlook.
Полагаю, подробно описывать тонкости форматирования каждого из типов данных нет никакой необходимости. Во-первых, в Microsoft Outlook применяется тот же принцип форматов, что и в любом другом пользовательском приложении Microsoft Windows. А во-вторых, они совершенно очевидны, да еще и предельно четко описаны в соответствующем выпадающем поле мастера " Новое поле".
Теперь перейдем к грустному. Как и в любом другом деле, создание собственных полей в рамках Microsoft Outlook (они называются нестандартными) порою бывает связано с некоторыми неприятностями. Попробую рассказать о наиболее распространенных из них.
Следует помнить, что вновь созданное поле сохраняется только в той папке, в которой оно было создано. Это означает, что наше поле " Cashe" будет видно и доступно, как любое другое стандартное поле, только в рамках модуля ДНЕВНИК. Из других модулей добраться к нему невозможно. Если оно все же требуется где-либо еще, то вам не останется иного выбора, как создать еще одно такое поле, но в другом модуле. Потом, Microsoft Outlook достаточно специфически относится к нестандартным полям. В частности, это выражается в том, что эти поля не попадают в обычный набор выпадающего списка " Поля". Так что искать его там бесполезно. Microsoft Outlook предпочитает хранить их в категории с именем "Поля пользователя" независимо от того, что конкретно каждое поле делает и какими данными оперирует.
Правда, бывает и так, что вновь созданное пользовательское поле отсутствует и на вкладке " Дополнительно" в диалоговых окнах " Поиск" и " Фильтр". Причина этого совершенно проста и столь же нелепа. Лично я считаю ее явной недоработкой со стороны Microsoft Corporation.
В случае проведения поиска или фильтрации по нескольким модулям одновременно, Microsoft Outlook "видит" только стандартные поля. Таким образом, при наличии потребности найти какое-либо нестандартное поле, ищите его в каждом модуле по отдельности.
Между прочим, раз уж разговор коснулся явных ляпов разработчиков из Редмонда, есть, как минимум, еще одна причина для недовольства. Вычисляемые поля, как, например, " Размер", также не отображаются на вкладке " Дополнительно". Также следует помнить, что в Microsoft Outlook нестандартные поля имеют лишь вспомогательный характер и над ними допускается выполнять далеко не любые операции.
В частности, нестандартные поля не подлежат сортировке, группировке и фильтрации по какому бы то ни было признаку. Любая попытка выполнения подобной операции над ними непременно приведет к сообщению об ошибке. Печально, конечно, но таковы правила.
Однако все же нельзя не признать, что все перечисленные тут нюансы, мягко говоря, не слишком существенны и уж точно никак не влияют на принципиальные параметры Microsoft Outlook. В то же время, механизм дополнительных полей, оставаясь простым в пользовании, весьма широко раздвигает границы возможностей данной программы и областей ее применения.
Александр Запольскис
В разделе, посвященном модулю ДНЕВНИК, персонального электронного секретаря Microsoft Outlook, я упоминал о том, что средствами этой программы практически ничего не стоит организовать, например, оплату труда исходя из почасовой ставки. Однако в подробности вдаваться не стал. Так вот, сие было сделано целенаправленно, ибо понять этот механизм без подробного его рассмотрения невозможно. Однако теперь, когда основные характеристики Microsoft Outlook перестали быть секретом, настала пора разобраться с внутренней механикой той самой магии, с помощью которой Microsoft Outlook значительно выделяется среди других программ аналогичного характера.
С самого начала следует обратить внимание на тот факт, что внешняя разнообразность Microsoft Outlook базируется на общем фундаменте, имя которому — таблица. Нельзя сказать, что Microsoft Outlook это только таблицы, однако нельзя также и забывать, что любая современная база данных есть не что иное, как несколько таблиц, объединенных некоторым количеством разнообразных связей. Переход к табличному представлению позволяет более наглядно понять тот факт, что любое поле Microsoft Outlook на самом деле является обычным полем обычной таблицы. Возьмите, к примеру, тот же ДНЕВНИК, активизируйте меню ВИД, раскройте в нем список ТЕКУЩЕЕ ПРЕДСТАВЛЕНИЕ и выберите вариант СПИСОК ЭЛЕМЕНТОВ. Указанный модуль переменит свое представление и примет вид самой обычной таблицы. Названия полей становятся наименованиями столбцов, а записи дневника — строками таблицы. Не составляет труда заметить, что табличный вид чрезвычайно информативен. В частности, программа по умолчанию отслеживает даже такие характеристики, как время начала работы с каждым конкретным документом и длительность этой работы. В плане приведенного выше примера, на основании даже одного поля " Длительность" и опираясь на идеологию электронной таблицы, теоретически, ничего не стоит ввести еще один столбец, в котором набрать простую формулу умножения длительности на почасовую ставку.
Теперь давайте познакомимся с практической стороной данного вопроса. Для начала необходимо создать новый столбец. Для этого обратимся в системное меню ВИД и выберем режим ОТОБРАЖАТЬ ПОЛЯ. Это вызывает на экран окно специализированного мастера. Данный мастер состоит из двух частей. Слева — поля, которые есть, но которые не отражаются в таблице, а справа — те, которые отражаются. С помощью экранных кнопок " ДОБАВИТЬ" и " УДАЛИТЬ" пользователь имеет возможность перебрасывать наименования полей между этими частями. Однако, кроме имеющихся полей, можно создавать и свои собственные. Это делается посредством экранной кнопки " НОВОЕ ПОЛЕ". Ее нажатие активизирует другой мастер, который, собственно, и выполняет всю работу. Его поле " Имя" определяет наименование вновь создаваемого столбца. Естественно, его пользователь задает сам. Второе поле, " Тип", определяет тип содержимого этого столбца. Оно является полем с выпадающим списком, содержащим все типы, какие только можно создать в рамках Microsoft Outlook. Всего существует одиннадцать типов, от булевского (Да/Нет) до вычисляемых с помощью математических выражений. Выберем вариант " Формула". Мастер несколько видоизменяется, и третьим полем становится поле " Формула", в котором эта самая формула и задается. Теоретически, ее можно набрать с клавиатуры непосредственно в поле ввода, однако рациональнее заставить поработать на себя построителя выражений. Он, как добрый джин, возникает каждый раз, когда нажимается экранная кнопка " Изменить". В появившемся окне вы вольны построить все, что посчитаете нужным. С помощью кнопки " Поле" и связанного с ней выпадающего списка выбирается конкретное поле, значение которого будет использовано как величина в выражении. Аналогичным образом работает расположенная рядом экранная кнопка " Функция", только за ней скрывается полный перечень допустимых функций, от общих (типа сложения или умножения) до специализированных (например, финансовых). Манипулировать ими чрезвычайно просто. Помните, как в школе: "А" плюс "Б"... только вместо обезличенных переменных вставляются конкретные поля. В данном примере берем поле " Длительность" и умножаем его на одну тысячу (совершенно неважно чего). Пусть это будут новые европейские евро. Далее остается только несколько раз нажать " ОК", по мере того, как станут исчезать окна мастеров. В результате, в первоначальной таблице появляется дополнительный столбец, я назвал его " Cashe" (см. рис. 4), в котором отображаются какие-то цифры. Исходя из заданной формулы, они означают размер счета, который можно было бы выставить из затрат времени на работу с каждым документом и ставки одна тысяча евро в минуту. Дело в том, что содержимое поля " Длительность" задается в минутах. Хотя простым математическим действием минуты можно превратить в часы.
Из представленного примера следует, как минимум, один вывод — с помощью дополнительных полей пользователь получает возможность задавать любые контрольные параметры, от простых пометок, типа выполнил — не выполнил, до достаточно сложных, вычисляемых с использованием множества параметров. Дополнительные поля могут иметь и другое применение, например, для принудительного задания определенного значения какого-нибудь значимого поля. Предположим, один раз в квартал вы собираете определенных сотрудников на совещание, которое проводится всегда в одном и том же месте. Пусть это будет Президент-отель в Вашингтоне (округ Колумбия, США). Допустим, того требует традиция. Эту информацию можно каждый раз вводить вручную, однако значительно изящнее составить выражение, заполняющее соответствующее поле указанной информацией каждый раз, когда создается очередная запись о проведении собрания, и это как раз именно то, традиционное, собрание.
Теперь, когда механизм задания и функционирования полей в общем и целом понятен, я хочу обратить ваше внимание на важные детали, знание которых имеет самое непосредственное влияние на конечный результат. Самой первой тонкостью является форматирование результата в новом столбце. Оно осуществляется путем выбора конкретного значения поля " Формат" в окне мастера " Новое поле". Правда, не беда, если вы забыли это сделать в процессе создания нового поля или даже впоследствии передумали и пожелали переменить его. Прямо в табличном представлении модуля ДНЕВНИК наведите маркер мыши на заголовок столбца (то есть на квадратик с наименованием столбца) и нажмите на правую клавишу мыши. Появится контекстно-зависимое меню, в котором, помимо всего прочего, есть режим " Форматировать столбцы". Если его выбрать, то Microsoft Outlook выведет на экран своего рода учетную карточку этого столбца.
Это универсальный мастер. В левом его окне представлен полный перечень полей, которые выведены на экран для конкретного модуля. В данном случае это ДНЕВНИК. Выбирая наименование конкретного столбца, вы получаете доступ к настройкам его внешнего вида. В зависимости от типа поля, правая часть мастера несколько видоизменяется. Правда, эти изменения ограничиваются типом данных. Заданный при создании столбца формат полностью переменить нельзя. Однако можно манипулировать с наименованием столбца, с выравниванием и с шириной самого поля. После нажатия " ОК" все сделанные изменения вступают в силу.
Теперь следует подробнее пройтись по типам данных, которые применяются в Microsoft Outlook.
Тип данных | Представляет |
Выражение | Комбинации значений полей и текста в одном столбце (представление таблицей) или строке (представление карточками). Можно задать, какие поля будут показаны — все или только первое непустое. Можно комбинировать текст с полями без кавычек. |
Денежный | Числовые данные денежного типа или математические вычисления с участием денежных сумм. |
Дата/время | Значения дат и времени. |
Длительность | Числовые данные. Длительность задается в минутах, часах или днях. С помощью стандартного формата можно задать, какой день будет использоваться при пересчете вводимых в поле данных — 24-часовой или рабочий, согласно рабочим установкам на вкладке Задачи/заметки диалогового окна Параметры (меню СЕРВИС). Например, если на вкладке установлен 8-часовой день, введя в поле 12 часов, вы увидите значение 1,5 дня. Значения сохраняются в минутах. |
Формула | Вычисления с участием стандартных и нестандартных полей. В формуле можно использовать любые подходящие функции и операторы. |
Целое число | Целочисленные данные. |
Ключевые слова | Такое поле используется для группирования и поиска родственных элементов, аналогично категориям Microsoft Outlook. Если в тексте несколько значений, разделяйте их запятыми. В представлении можно группировать по каждому значению в отдельности. |
Число | Числовые данные или математические вычисления, не включающие денежные суммы (для них используется тип данных "Денежный"). |
Процент | Числовые данные, выраженные в процентах. |
Текст | Текст или комбинации из текста и чисел; например, адреса. Максимально может содержать до 255 символов. |
Да/нет | Данные, принимающие одно из двух значений; например, "Да" и "Нет", "Истина" и "Ложь", "Включено" и "Выключено" |
Полагаю, подробно описывать тонкости форматирования каждого из типов данных нет никакой необходимости. Во-первых, в Microsoft Outlook применяется тот же принцип форматов, что и в любом другом пользовательском приложении Microsoft Windows. А во-вторых, они совершенно очевидны, да еще и предельно четко описаны в соответствующем выпадающем поле мастера " Новое поле".
Теперь перейдем к грустному. Как и в любом другом деле, создание собственных полей в рамках Microsoft Outlook (они называются нестандартными) порою бывает связано с некоторыми неприятностями. Попробую рассказать о наиболее распространенных из них.
Следует помнить, что вновь созданное поле сохраняется только в той папке, в которой оно было создано. Это означает, что наше поле " Cashe" будет видно и доступно, как любое другое стандартное поле, только в рамках модуля ДНЕВНИК. Из других модулей добраться к нему невозможно. Если оно все же требуется где-либо еще, то вам не останется иного выбора, как создать еще одно такое поле, но в другом модуле. Потом, Microsoft Outlook достаточно специфически относится к нестандартным полям. В частности, это выражается в том, что эти поля не попадают в обычный набор выпадающего списка " Поля". Так что искать его там бесполезно. Microsoft Outlook предпочитает хранить их в категории с именем "Поля пользователя" независимо от того, что конкретно каждое поле делает и какими данными оперирует.
Правда, бывает и так, что вновь созданное пользовательское поле отсутствует и на вкладке " Дополнительно" в диалоговых окнах " Поиск" и " Фильтр". Причина этого совершенно проста и столь же нелепа. Лично я считаю ее явной недоработкой со стороны Microsoft Corporation.
В случае проведения поиска или фильтрации по нескольким модулям одновременно, Microsoft Outlook "видит" только стандартные поля. Таким образом, при наличии потребности найти какое-либо нестандартное поле, ищите его в каждом модуле по отдельности.
Между прочим, раз уж разговор коснулся явных ляпов разработчиков из Редмонда, есть, как минимум, еще одна причина для недовольства. Вычисляемые поля, как, например, " Размер", также не отображаются на вкладке " Дополнительно". Также следует помнить, что в Microsoft Outlook нестандартные поля имеют лишь вспомогательный характер и над ними допускается выполнять далеко не любые операции.
В частности, нестандартные поля не подлежат сортировке, группировке и фильтрации по какому бы то ни было признаку. Любая попытка выполнения подобной операции над ними непременно приведет к сообщению об ошибке. Печально, конечно, но таковы правила.
Однако все же нельзя не признать, что все перечисленные тут нюансы, мягко говоря, не слишком существенны и уж точно никак не влияют на принципиальные параметры Microsoft Outlook. В то же время, механизм дополнительных полей, оставаясь простым в пользовании, весьма широко раздвигает границы возможностей данной программы и областей ее применения.
Александр Запольскис
Компьютерная газета. Статья была опубликована в номере 50 за 1998 год в рубрике soft :: субд