ЭЛЕКТРОННАЯ БИБЛИОТЕКА КОАПП
Сборники Художественной, Технической, Справочной, Английской, Нормативной, Исторической, и др. литературы.



                          НПКО Мекомп при МЧМ СССР
                              GSQL*CALCH
                          GПособие пользователяH
                              GВерсия 1.1H
                  Система управления реляционной БД ORACLE

                              GПРЕДИСЛОВИЕH
                                  GЦельH
          Это Пособие пользователя по SQL*Calc показывает как использовать
программы SQL*Calc,программы изощренных ЭТ (электронная таблица),предназначен-
ных для работы в системе управления реляционной БД ORACLE (RDBMS).Здесь описа-
ны приемы для создания,модифицирования и хранения таблиц,а также обновления
данных в ORACLE RDBMS.

                       GКак организовано это пособиеH
        Пособие пользователя SQL*Calc содержит 6 глав и 4 приложения,разделе-
нные на 4 части:
     Часть 1: Как начать
          Глава 1 представляет вам программу SQL*Calc и дает краткий
     обзор ее возможностей.
          Глава 2 описывает ЭТ SQL*Calc и основные приемы для введения данных.
     Часть 2: Самоучитель
          Глава 3 содержит 4 урока для Gвашего обучения как использоватьHос-
       новные возможности SQL*Calc:
Урок 1 показывает как вводить текст и числа,извлекать данные
       из ORACLE RDBMS,а также как сохранять ваши ЭТ.
Урок 2 показывает как извлекать и печатать ЭТ
       и как извлекать колонки данных из вашей БД.
Урок 3 объясняет как управлять переполнением данных и недокомплектом,а также
       предоставляет вам дальнейшие приемы форматирования.
Урок 4 показывает как создавать новые таблицы в ORACLE RDBMS и более изощрен-
       ные приемы для использования операторов SELECT для извлечения данных
       для ЭТ.
Часть 3: Ссылки
          Глава 4 показывает как использовать Gклавиши Hна вашей клавиатуре
для взаимодействия с SQL*Calc.Присвоения клавиш и одноклавишных команд также
описываются.
          Глава 5 объясняет приемы,которые можно использовать для Gввода и
редактирования данных Hв ЭТах и вручную и путем ввода данных из ORACLE RDBMS.
          Глава 6 описывает команды GslashH,применяемые в SQL*Calc для упра-
вления вашими электронными таблицами.Каждая команда этой группы и ее опции
здесь описана.
          Часть IV: Приложения
          Приложение А показывает как устанавливать программу
     SQL*Calc на вашем PC/XT IBM.
          Приложение В перечисляет сообщения об ошибках,которые могут вам вст-
ретиться при применении SQL*Calc и сообщает вам причины их возникновения и
способ борьбы с ними.
         Приложение С является набором замечаний для опытных пользователей ЭТ.
         Приложение D перечисляет некоторые приемы и захваты для
пользователей SQL*Calc.
          Дополнительно приводится глоссарий терминов,с которыми вы
возможно не знакомы.

                          GУстановка SQL*CalcH
          Если вы работаете на IBM PC,вы должны установить SQL*Calc перед тем
как вы можете ее использовать.Смотри Приложение А данного пособия,где прилага-
ются соответствующие инструкции.
          Если вы работаете на другой машине,проконсультируйтесь с Installa-
tion and User's Guide для вашей системы или обратитесь к администратору вашей
БД для проверки установки.

                    GПриветствуются ваши комментарииH
          Мы ценим ваши комментарии как пользователей ORACLE и читателей этого
пособия.Ваше мнение о том как мы написали,проверили и протестировали систему
очень важно для нас.Пожалуйста,используйте бланк Reader's Comment Form,распо-
ложенный в конце этого пособия для сообщений о том,что вам нравится и что не
нравится в этом пособии по ORACLE.Кроме того вы можете связаться с нами по
следующему адресу и телефону (415) 598-8000.

          Technical Publication Manager
          Oracle Corporation
          20 Davis Drive
          Belmont,California 94002

                                 GСодержаниеH
     GЧасть 1        Как начатьH
     GГлава 1   Введение ........................................H
                Приглашаем в SQL*Calc ..........................
                Краткий обзор ..................................
                Как начать .....................................
                Графические средства клавиатуры,применяемые в
                данном пособии .................................
     GГлава 2   Основные концепции ЭТ .........H
                Сетка ..........................................
                Экран дисплея ..................................
                Создание записей ...............................
     GЧасть II       СамоучительH
     GГлава 3   Обучение использованию SQL*Calc .................H
                Перед тем как начать ...........................
                Урок 1 .........................................
                Урок 2 .........................................
                Урок 3 .........................................
                Урок 4 .........................................
                Резюме .........................................
     GЧасть III      СсылкиH
     GГлава 4   Присвоение клавиш и одноклавишные команды .......H
     GГлава 5   Введение данных в ЭТ ...........H
                Введение .......................................
                Размещение данных: перемещение по электронной
                таблице ........................................
                Независимые записи данных ......................
                Редактирование записей данных ..................
                Введение данных из вашей ORACLE RDBMS ..........
     GГлава 6   Ввод команд SLASH ...............................H
                Команды Worksheet ..............................
                Команды Range ..................................
                Команды Copy ...................................
                Команды Layout .................................
                Команды File ...................................
                Команды Print ..................................
                Команды Oracle .................................
                Команды Quit ...................................
     GПриложенияH
     GПриложение А       Пособие по установке ...................H
     GПриложение В       Сообщения об ошибках ...................H
     GПриложение С       Замечания для опытных пользователейH
                        GЭТ .....................H
     GПриложение D       Приемы и захваты SQL*Calc ..............H
     GГлоссарийH

+                        GЧАСТЬ 1:     Как начатьH
                          GПриглашаем в SQL*CalcH
          Вы на пороге мира,в котором сочетаются мощь изощренной реляционной
БД с достоинствами гибкой электронной таблицы.При помощи SQL*Calc (произносит-
ся 'сикуэль калк') вы можете быстро извлечь данные из записей,хранимых в вашей
ORACLE RDBMS для использования в обработке ЭТ и отчетами,проекциями и разными
моделируемыми ситуациями.Вы можете также создать новые таблицы в вашей БД при
помощи информации из вашей ЭТ.

                                 GКраткий обзорH
         В ORACLE RDBMS данные хранятся в GтаблицахH из колонок и строк.Дан-
ные в таблицу вводят строка за строкой и каждая строка представляет запись
объектов информации.Таблицы выглядят следующим образом:
          GТаблица 1-1H
     EMPNO   ENAME   JOB         MGR   HIREDATE   SAL   COMM  DEPTNO

     7369    SMITH   CLERK       7902  17-DEC-80  800           20
     7499    ALLEN   SALESPER    7698  20-FEB-81  1600  300     30
     7521    WARD    SALESPER    7698  22-FEB-81  1250  500     30
     7566    JONES   MANAGER     7839  02-ARK-81  2975          20
     7654    MARTIN  SALESPER    7698  28-SEP-81  1250  1400    30
     7698    BLAKE   MANAGER     7839  01-MAY-81  2850          30
     7782    CLARK   MANAGER     7839  09-JUN-81  2450          10
     7788    SCOTT   ANALYST     7566  09-DEC-82  3000          20
     7839    KING    PRESIDENT         17-NOV-81  1500          10
     7844    TURNER  SALESPER    7698  08-SEP-81  1500  0       30
     7876    ADAMS   CLERK       7788  12-JAN-83  1100          20
     7900    JAMS    CLERK       7698  03-DES-81  950           30
     7902    FORD    ANALYST     7566  03-DEC-81  3000          20
     7934    MILLER  CLERK       7782  23-JAN-82  1300          10

          Или следующим образом:

     GТаблица 1-2H
     SALESPERSON       REGION      QUOTA
     (ПРОДАВЕЦ)        (РАЙОН)     (КВОТА)

     Schmidt           East        120
     Wong              East        160
     Allen             West        170
     Martin            East        160
     Clark             East        150
     Ward              West        160
     Garcia            West        150

          Для изменения данных в ORACLE RDBMS вы можете использовать язык под
названием SQL.Вы можете использовать такие команды как INSERT,DELETE,UPDATE
для получения нужных вам результатов.Вы можете также создавать новые таблицы
прямо из ЭТ.Для первоначального использования SQL*Calc вам не нужно знать все
о системе БД; просто просмотрите команды SQL,если вы их не узнаете при их поя-
влении в уроках.
         В SQL*Calc вы располагаете ваши данные в GЭТH,состоящих из колонок
и строк.Строки нумеруются,а колонки именуются буквами.Пространство в каждом
пересечении строки и колонки называется Gячейкой.HДанные вводятся ячейка за
ячейкой.Например,вы можете вывести данные на экран из таблицы квот как показа-
но в примере ЭТ ниже:
              A        B           C     D    E    F    G    H
      1
      2  SALESPERSON   REGION      QUOTA
      3  Schmidt       East        120
      4  Wong          East        160
      5  Allen         West        170
      6  Martin        East        160
      7  Clark         East        150
      8  Ward          West        160
      9  Garcia        West        150
      10
      11

          Для ввода данных в ЭТ и производства вычислений,выполнения проекций
и так далее вы можете использовать набор команд SQL*Calc,выведенный в строке
приглашений в нижней части экрана.Одна или 2 строки клавиш выбирают нужную вам
команду; нажмите клавишу [HELP] (подсказка),что позволит вам увидеть экраны
'подсказки',когда вы не знаете как поступить.(На клавиатуре IBM PC клавиша
[HELP] - это F1; для других терминалов - смотри примечания к реализациям в
книге Installation and User's Guide для вашей системы.)
          В SQL*Calc вы можете ввести данные в ячейку при помощи следующих
операций:
 *  выполнить запись в ячейку вручную.
 *  формулой,которая вычисляет новое значение из данных,находящихся в других
    ячейках.
 *  копируя данные из одной ячейки в другую.
 *  операторами SQL SELECT,которые извлекают данные из ORACLE RDBMS.
          Первые 3 способа типичны для всех ЭТ.Для вашего удобства SQL*Calc
добавляет 4-тый способ.SQL*Calc сохраняет время и исключает ошибки,которые
могут возникнуть при перекопировании данных,которые тщательно введены в вашу
БД.Просто напишите оператор SQL SELECT для любой ячейки добавив клаузу INTO,
чтобы сообщить SQL*Calc область ячеек в которых вы хотите вывести данные на
экран.Урок 1 покажет вам шаг за шагом как это выполнить.

                                 GКак начатьH
          Здесь приведен сжатый порядок действий:
 1.В зависимости от вашего уровня знаний системы управления БД ORACLE,изучите
   или вспомните основы применения операторов SQL в книгах SQL Primer или Int-
   roduction to ORACLE и Overview of SQL.
 2.В зависимости от вашего опыта работы с ЭТ изучите или вспомните главу 2 да-
   нного пособия,Основные концепции ЭТ.
 3.Если вы работаете на IBM PC,то установите SQL*Calc.Обратитесь для этого к
   Приложению А.
 4.Выполните упражнения раздела самоучителя.Урок 1 покажет вам как стартовать
   программу SQL*Calc.

             GОбозначения клавиш,используемые в данном пособииH
          Обозначения клавиш,используемые в данном пособии,может не всегда со-
впадать с именами клавиш на вашей клавиатуре.Ниже вы найдете эквиваленты для
клавиш IBM PC.Если вы используете другой терминал,то обратитесь к главе по
присвоению клавиш,находящейся в замечаниях по реализации в Installation and
User's Guide для вашей системы.                        ____
                                                      |    |
     Клавиша [RETURN] представлена следующим образом  |----|
                                                      |  | |
                                                      |<-- |
                                                      |----|
                                                      |____|
                                                ____________
     Клавиша [BACKSPACE] (возврат на символ)   |  |      |  |
                                               |  | <--- |  |
                                               |__|______|__|
                                                ____________
                                               |  |   ^  |  |
     Клавиша [SHIFT] (верхний регистр)         |  |   |  |  |
                                               |__|______|__|

          Другие клавиши:
          GФункция       КлавишаH

          G[Escape]      [Esc]H
          G[Home]        [Home]H
          G[End]         [End]H
          G[PageUp]      [PgUp]H
          G[PageDown]    [Pgdn]H
          G[Insert]      [Ins]H
          G[Delete]      [Del]H

          Клавиши,которые перемещают курсор и изменяют текущую ячейку,ячейку с
которой вы работаете,это клавиши со стрелками.(На IBM PC они расположены на
цифровой клавиатуре.Если при их нажатии на экране появляются цифры,то нажмите
клавишу [GNumLockH],чтобы перейти к работе со стрелками.)
          [-->]         правая стрелка
          [<--]         левая стрелка
          [ ^ ]         стрелка вверх
            |

          [ | ]         стрелка вниз
            v
          Перед началом работы с SQL*Calc убедитесь,что вы обнаружили следую-
щие клавиши.(Их присвоение на клавиатуре IBM PC дано ниже.Для других систем
проверьте эти присвоения по описанию вашего терминала.)

          GФункция       КлавишаH

          G[Edit]        [F2]H
          G[GoTo]        [F5]H
          G[*Copied]     [F10]H
          G[Help]        [F1]H
          G[Escape]      [Esc]H
          Дополнительно самоучитель в данном пособии использует следующие сог-
лашения:
 * буквы,цифры и символы,которые вы вводите,всегда показаны Gжирным шрифтом.H
 *  всегда вводите ссылки на ячейки маленькими буквами (Gg67,ab89H и так да-
 лее) в первом уроке; во 2-м уроке вам будет показано специальное применение
 больших букв в ссылках на ячейки (GD10,CR18 Hи так далее).
 *  хотя вводы часто показаны большими буквами,вы можете набирать их и малень-
    кими буквами.Например,ввод,показанный как /С можно набрать и как /с.(Но
    будьте осторожны с использованием маленьких букв при ссылках на ячейки по-
    ка не изучите специальное применение больших букв.)
 *  диапазон ячеек обычно показан первой и последней ячейками,разделенными то-
    чкой,нспример,Ga1.d3H,но SQL*Calc позволяет использовать и двоеточие -
    Ga1:d3H.(Более целесообразно применять точку,поскольку она находится в
    том же регистре,что и маленькие буквы.)

+                    GГлава 2     Основные концепции ЭТH
                                   GСеткаH
          ЭТ SQL*Calc состоит из ячеек сетки в 256 колонок на 8192 строки.Ст-
роки просто нумеруются от 1 до 8192,а колонки идентифицируются одной или 2-мя
буквами следующим способом:
     Колонки от 1 до 26    ---> A - Z
     Колонки от 27 до 52   ---> AA - AZ
     Колонки от 53 до 256  ---> BA - IV (IV - это не римское число)
          Пространство в пересечениях строк и колонок называется GячейкамиH.
GH Местоположение ячейки или ее адрес называется GкоординатойH,это буквы
колонки и номера строк.Ячейка А1 располагается в верхнем правом углу ЭТ,а
IV8192 - нижнем правом.

     GРисунок 2-1H
     Размещение ячеек
             A      B     C   ::    BA   BB   ::  IU         IV
       1  xxxxxx    ^     ^         ^    ^        ^          ^
       2     ^      |     |         |    |        |          |
       3     |      \_____\_________\____\________\__________\
       4 _   |                         |
       .\  |                         |
       .|  |                         |
       .|  |                         |
       .|  |                         |
       .|  |                         |
       .|  |                         |
       .|  |                         |
    8188_ |  |                         |
    8189 \|  |                         |
    8190  |  |                         |
    8191  |  |                         |
    8192  |  |                         |                   xxxxxxxx
           |  |                         |                       |
        строки|                         |                       |
            ячейка а1               колонки                     |
                                                         ячейка iv8192

                                GЭкран дисплеяH
                                GОбласть окнаH
          При первом старте SQL*Calc вы увидите только малую часть полной сет-
ки.Эта часть называется G окном H ЭТ;оно дает вам ограниченный обзор всей ЭТ.

GРисунок 2-2H  Пример окна
             A      B     C      D      E      F      G      H
       1  GxxxxxxH                                         ^
       2     ^                                               |
       3 <---|-----------------------------------------------|
       4     |                         |
       5     |                         |
       6     |                         |
       7     |                         |
       8     |                         |
       9     |                         |
      10     |                         |
      11     |                         |
      12     |                         |
      13     |                         |
      14     |                         |
      15     |                         |
      16     |                         |
      17     |                         |
      18     |                         |
      19     |                         |
      20     |                         |
      21     |                         |
      0% USED| A1 (Blank) <---|        |
    Press HELP any time.(Begin SQL with $,formula with +,command wi-
    th /.)   |                |        |       ^
    # <--|   |                |        |       |
         | текущая ячейка  строка   границы   строка
         |                 статуса            приглашения
      строка ввода с
      курсором

(Ваш экран может выглядеть по-другому,например,на строку короче и без строки
0% USED)

                                 GГраницыH
          Буквы в верхней части экрана означают колонки ЭТ и всегда видны.Но-
мера на границе слева идентифицируют строки ЭТ.Для нахождения конкретной ячей-
ки,например С12,пройдем по колонке С пока не дойдем до строки 12.

                               GТекущая ячейкаH
          Ячейка,высвеченная ярче на экране,называется Gтекущей ячейкой H
(здесь она показана как GхххххххH).Текущая ячейка - это ячейка в которую
SQL*Calc будет помещать вводимые вами данные.
          пециальные клавиши со стрелками передвигают текущую ячейку по экра-
ну.Когда вы нажимаете одну из клавиш-стрелок,то текущая ячейка перемещается из
одного места в другое по стрелке.Если вы будете держать нажатой клавишу вниз,
то текущая ячейка будет быстро перемещаться вниз по экрану,заставляя таким об-
разом экран как-бы 'прокуручиваться' и изменять положение окна на таблице.
          Для пользователей IBM PC: клавиши-стрелки находятся на цифровой кла-
виатуре слева.Отметим,что они имеют и нанесенные цифры.Если вы нажмете [Num-
Lock] над ними,то стрелки станут недоступны,а с этих клавиш можно вводить циф-
ры.Нажмите эту клавишу [NumLock] второй раз и стрелки станут снова доступны.
          Нажатие [GHomeH] перемещает текущую ячейку в положение А1,верхний
левый угол ЭТ.Нажатие [GEndH] перемещает текущую ячейку в пересечение стар-
ших строки и колонки,которые вы используете в данной ЭТ.[GPageDownH] переме-
щает текущую ячейку вниз на следующую 'страницу' или окно информации.
[GPageUpH] перемещает текущую ячейку на предыдущую страницу ЭТ.

                             GСтрока статусаH
          Строка в нижней части экрана называется строкой статуса.До тех пор
пока вы не сделаете начальный ввод или переместите текущую ячейку,вы будете
видеть в этой строке N версии SQL*Calc.На левой стороне этой строки при приме-
нении IBM PC находится информация об объеме памяти,занимаемом этой таблицей.
Отметим,что это значение может отличаться от приведенного в самоучителе в за-
висимости от конфигурации вашей системы.Затем дается положение текущей ячейки
и тип хранимой информации в скобках:
     *  (Blank)    --   совсем ничего
     *  (Text)     --   текст
     *  (Number)   --   числа
     *  (Formula)  --   формула
     *  (SQL)      --   оператор SQL
          Наконец,если ячейка не пуста (Blank),то строка статуса показывает
информацию,которую вы теперь вводите,содержание ячейки.Помните,что она д.б.
такой же как в окне.
          Например,если вы введете формулу в ячейку,окно покажет Gзначение H
формулы,число,которое будет получено при вычислении формулы; строка статуса
покажет саму формулу.
        Иногда строка статуса будет содержать сообщение типа "File not found".
Нажмите [GReturnH] для восстановления нормального состояния строки.

                             GСтрока приглашенияH
          Под строкой статуса находится строка приглашения,описывающая дейст-
вие,которое вы можете выполнить в данное время.Например,когда вы первый раз
работаете с SQL*Calc она сообщает:
     Press HELP any time.(Begin SQL with $,formula with +,command with /.)
     (Нажмите клавишу HELP в любое время.(Начните оператор SQL с $,
     формулу с +,команду с /.)
          Это сообщение является базовым.Когда оно на экране,вы можете выпол-
нить выполнить следующие действия:
 *  ввести данные
 *  ввести формулу
 *  ввести оператор SQL
 *  ввести команду slash
 *  переместить текущую ячейку
 *  применить любую одноклавишную команду.
          А также как и в ответ на большинство приглашений вы можете нажать
клавишу [GHelpH] для получения помощи.(На IBM PC это клавиша [GF1H],на
других клавиатурах смотри перечень их присвоений.)
          Часто строка приглашения показывает набор возможных действий.Сделай-
те ваш выбор введя первую букву соответствующего слова.SQL*Calc повышенной яр-
костью выделит это слово,сообщив,что это действие будет выполнено при нажатии
вами клавиши [GReturnH].
     Этот метод для вас очень удобен и прост!

                               GСтрока вводаH
     Под строкой приглашения находится Gстрока вводаH.Здесь появляются любые
символы,которые вы вводите.Хотя и строка ограничена до 78 символов,вы можете
ввести гораздо больше,до 1000 символов для ячеек SQL,до 200 символов для фор-
мул и до 240 символов для текста.Строка ввода сдвигается влево как только вы
дойдете до конца экрана.

                              GСоздание записиH
          Каждая ячейка первоначально пуста (Blank) и остается пустой пока вы
не введете в нее какие-либо данные.Один тип данных - это Gтекст,Hнапрмер,
чье-то имя,другой тип,это Gчисло,Hнапример 198 или 52.146.Третий тип данных-
Gформула,Hиногда ее называют выражением,например,+а3+10.(Вам нужно ввести
перед каждой формулой знак + по которому SQL*Calc узнает,что это формула.)
4-тый тип записи - это Gоператор SQLH,предваряемый знаком G$H,который вво-
дит или изменяет данные в таблицах ORACLE RDBMS.Формулы могут содержать любую
правильную алгебраическую комбинацию имен ячеек,чисел,операторов включая сле-
дующие:
      +      сложение
      -      вычитание
      *      умножение
      /      деление
      ^      возведение в степень
          Другие операторы позволяют вам проверять такие условия как "равно"
или "меньше чем".Эти операторы представлены в главе 5,Введение данных в ЭТ.
          Формула может также содержать такую Gфункцию Hкак SUM.Например,
+SUM(a1.a20) вычисляет сумму первых 20 строк в колонке А.(Вспомним снова,что
SQL*Calc требует перед формулой знака +).SQL*Calc имеет расширенный набор фун-
кций.Все они описаны в главе 5.
          Последний тип записи,который вы можете сделать,это GоператорH
GSQL*CalcH,в большинстве случаев это оператор SQL SELECT,предназначенный для
переноса информации из ORACLE RDBMS в вашу ЭТ.Наберите G $ H в начале каждо-
го оператора SQL.

                              GКлавиша ReturnH
          Когда вы вводите разные типы данных,описанные выше,вы используете
клавиатуру.Наберите полный текст,формулу или оператор SQL,а затем нажмите
[GReturnH]G.HВ процессе набора информации она появляется в строке ввода.
Затем,когда вы нажмете [GReturnH],SQL*Calc сохранит данные в текущей ячейке-
ячейке с повышенной яркостью.
          Поскольку вы обычно применяете [GReturnH] для ввода данных,она ча-
сто называется клавишей "Enter".

                           GКорректирование  записиH
          Если вы хотите скорректировать часть команды или данных перед нажа-
тием клавиши [GReturnH],то можете применить клавишу [GBackspaceH] для сти-
рания символов и затем ввода правильных.
        Если вы хотите сделать исправления после нажатия клавиши [GReturnH],
то сделайте одно из следующих действий:
 *  перенаберите всю запись и замените ею предыдущую.
 *  используйте клавишу [GEditH] для изменения текущей записи.
          В данное время примените первую опцию как более простую.Перенаберите
запись и пошлите ее в данную ячейку,содержащую неерную информацию.Новые данные
заменят старые.

                              GОтмена записиH
          Если вы вы хотите отменить ввод набранных данных просто
 нажмите  клавишу [GEscapeH]G.HТекущая запись или команда исчезнут и
вы сможете начать сначала.

+                      GЧасть  II:   СамоучительH
                GГлава 3       Обучение работе на SQL*CalcH
                              GПеред началомH
          Уроки данной главы базируются на типичных задачах,которые могут вст-
ретиться при работе с SQL*Calc.Они дадут вам возможность уверенной работы с
программой и представят некоторые идеи о том как ее применять до того как вы
начнете практические действия.
          Если вы работаете на IBM PC,то перед началом должны выполнить следу-
ющие действия:
 * установить правильно ORACLE RDBMS - систему управления реляционной БД ORAC-
   LE.Убедитесь,что ядро ORACLE RDBMS загружено в память.
   Обратитесь при этом к Installation Guide в пособии по ORACLE.
 * правильно установить SQL*Calc.Обратитесь к Замечаниям по установке в Прило-
   жении А данного пособия.
 * обратиться к демонстрационным таблицам БД ORACLE RDBMS.Обратитесь к Замеча-
   ниям по установке Приложения А данного пособия.
          В процессе работы с системой вы должны также:
 *  познакомиться с графическими изображениями клавиш,применяемыми в данном
    пособии.Обратитесь к главе 1,Введение,и главе 4,Присвоение клавиш и однок-
    лавишные команды,а также к перечню по присвоению клавиш для вашей системы.
 *  понимать основные операции над ЭТ.Обратитесь к главе 2,Основные концепции
    ЭТ.
 *  знать как корректировать записи.Обратитесь к главе 2,Основные концепции ЭТ.
    В каждом уроке вас будут просить выполнить последовательности действий,пе-
    речисленных в шагах.Здесь приведены некоторые точки для запоминания:
     *  каждый шаг,требующий вашего действия начинается с символа >.
     *  буквы,цифры и символы,которые вы должны ввести,появляются Gжирным H
        шрифтом.
     *  такие команды как /GL Hдля /Layout и следующие за ними опции часто
       пишутся с большой буквы,но их можно писать и маленькими буквами.
     *  используйте маленькие буквы для ввода адресов всех ячеек пока вы не
        узнаете специальные функции больших букв в ссылках на ячейки.

                                GУрок  1H
          В данном уроке вы будете создавать ЭТ и вводить данные при помощи
типичных приемов.Затем вы увидите как SQL*Calc извлекает данные из ORACLE RD-
BMS.Этот урок для выполнения требует около 35 минут.
          При его выполнении вы узнаете как:
 *  стартовать программу ЭТ
 *  вводить текст,числа,повторяющиеся символы и формулы
 *  дублировать содержимое одной ячейки в многие ячейки
 *  копировать содержимое группы ячейки в другое место ЭТ
 *  стирать содержимое ячейки
 *  изменить вывод на экран значения ячейки
 *  войти в ORACLE RDBMS из ЭТ
 *  извлекать данные из таблицы ORACLE RDBMS
 *  сохранять ЭТ в файле
 *  выйти из программы.
                                 Перед началом:
 >  если вы применяете IBM PC,убедитесь,что ядро ORACLE RDBMS загружено в па-
    мять.Если нет,то наберите Goracle Hв ответ на приглашение системы для
    загрузки ORACLE RDBMS.
                  Далее стартуйте SQL*Calc,программу ЭТ:
 >  на приглашение системы введите Gsqlcalc Hи нажмите [GReturnH].Вы уви-
    дите экран копирайт с приглашением входа ORACLE RDBMS:
    Enter your ORACLE user identification.(Press RETURN to skip logon.)
     (Введите вашу идентификацию пользователя ORACLE.(Нажмите RETURN
     для обхода входа)
          В первой половине урока вы не будете применять ORACLE
     RDBMS,поэтому приглашение входа нужно проигнорировать:
     >  Нажмите [GReturnH]
GПримечание: Hиногда,если вы нажмете неверную клавишу,вы можете получить
             пронумерованное сообщение об ошибке на экране.Если вы его не пой-
             мете то выполните одно из следующих действий:
        *  если сообщение начинается с ORACLE MSG или ORA-  то просмотрите
           список пронумерованных сообщений об ошибках в книге ORACLE Error
           Messages and Codes Manual.
        *  если сообщение начинается с CAL-,то просмотрите Приложение В,Сооб-
           щения об ошибках,данного пособия.Обычно вам потребуется нажать кла-
           вишу [GEscapeH] и выполнить последние действия снова.

                            GВвод текста и чиселH
          Пустая ЭТ появляется с текущей ячейкой А1 и ждет вашей первой запи-
си.Давайте попытаемся.
          Для ввода текста и чисел можно просто набрать в строке ввода текст,
который вы хотите поместить в текущую ячйку.Только помните,что во время ввода
вы можете использовать клавишу [GBackspaceH] для коррекции ошибок перед на-
жатием клавиши [GReturnH].После нажатия этой клавиши вы можете скорректиро-
вать запись просто ее перенабрав.
     >  В А1 введите:  GSales ForecastH [-->]
          Ваша запись автоматически распознается как текст и появляется в яче-
          йке А1.Когда вы закончите ввод при помощи клавиши [-->] - правой ст-
          релки,курсор переместится в В1 и текст  "налезет" на ячейку В1.Отме-
          тим,однако,что содержимое ячейки В1 в строке статуса пустое (Blank).
          Налезание текста останется пока эта ячейка пуста:

     GРисунок 3-1H
             A      B     C     D     E      F      G       H
       1  Sales Forecast
       2          ^ ^
       3          | |
       4         /  |
       5        /   |
       6       /    |
       7      /     |
       8     |      |
       9     |      |
      10     |      |
      11     |      |
      12     |      |
      13     |      |
      14     |      |
      15     |      |
      16     |      |
      17     |      |
      18     |      |
      19     |      |
      20     |      |
      21     |      |
      0% USED| B1 (Blank) <-------|
    Press HELP any time.(Begin SQL with $,formula with +,command wi-
    th /.)   |      |             |
             |      |             |
        перекрытие текущая     b1 все еще пуста
                   ячейка      несмотря на перекрытие

  >  Нажмите  [-->]  и введите в С1 ваше имя с последующим нажатием [GReturnH].
          Когда вы нажмете эту клавишу без создания записи,вы останетесь в той
     же текущей ячейке.
          Теперь переместимся в следующую ячейку при помощи команды GOTO испо-
     льзуя присвоенную клавишу для вашй системы ([GF5H] на IBM PC) и коорди-
     наты ячейки:
 >  Введите: [GGo ToH]Ga3[Return].H
 >  Введите: GSales History:[Return].H
          Получилось? Вы всегда завершаете запись нажатием стрелки или клавиши
    [GReturnH].Затем вы перемещаетесь к следующей точке на ЭТ при помощи
    клавиш-стрелок или при помощи GOTO.(Помните об использовании маленьких бу-
    кв для колонок пока не узнаете специальное применение больших букв в уроке
    2.) Теперь,несмотря на шаг действия Gвы сами Hдолжны решать о переходе к
     следующей ячейке.
          Теперь введем следующие титулы:
     >  Начиная с А4 вниз введите слова:
        GSeasonH
        GWinterH
        GSpringH
        GSummerH
        GFallH
          Затем введите следующие титулы колонок:
     >  Начиная с В4 по 4 строке введите:
        GYear1H
        GYear2H
        GYear3H
        GYear4H

          Ваша ЭТ будет выглядеть следующим образом:
     GРисунок 3-2H
             A      B       C      D     E     F      G     H
       1  Sales Forecast Your Name
       2         ^
       3  Sales History:
       4  Season | Year1 Year2  Year3  Year4
       5  Winter |  ^______^_____^       ^    <--|
       6  Spring |  |                    |    <--|
       7  Summer |  |                    |    <--|
       8  Fall  /   |                    |    <--|
       9       /    |                    |       |
      10      /     |                    |       |
      11     |      |                    |       |
      12     |      |                    |       |
      13     |      |                    |       |
      14     |      |                    |       |
      15     |      |                    |       |
      16     |      |                    |       |
      17     |      |                    |       |
      18     |      |                    |       |
      19     |      |                    |       |
      20     |      |                    |       |
      21     |      |                    |       |
      0% USED| E4(Text)=Year4 <---|      |       |
    Press HELP any time.(Begin SQL with $|formula with +,command wi-
    th /.)   |      |             |      |       |
             |      |             |      |       |
             |   титулы колонок   |   текущая    |
           титул                  |    ячейка    |
          электронной          содержимое     титулы колонок
          таблицы               текущей
                                ячейки

          Если ваша ЭТ выглядит не так,то примените приемы,описанные в главе
1,для коррекции ошибок.

          В традиционных ЭТах следующим шагом будет введение данных.Выполните
эту операцию для Year1:
     >  Начиная с В5 и идя вниз введите данные показанные в колонке В:
     GРисунок 3-3H
    |         A      B       C      D     E     F      G     H
    |   1  Sales Forecast Your Name
    |   2
    |   3  Sales History:
    |   4  Season   Year1   Year2  Year3  Year4
    |   5  Winter       300
    |   6  Spring       400
    |   7  Summer       350  <---
    |   8  Fall         500      |
    |   9     ^    хххххххх      |
    |  10     |      ^           |
    |  11     |      |           |
    |  12     |      |           |
    |  13     |      |           |
    |  14     |      |           |
    |  15     |      |           |
    |  16     |      |           |
    |  17     |      |           |
    |  18     |      |           |
    |  19     |      |           |
    |  20     |      |           |
    |  21     |      |           |
    |  1% USED| B9(Blank)        |
    |Press HELP any time.(Begin SQL with $ formula with +,command wi-|
    |th /.)   |      |           |                                   |
              |      |           |
              |  текущая ячейка  |
          запись                 |
       текста (с левой     числовые записи
       стороны ячейки)     (справа каждой ячейки)
          Введите все числа.Вы узнаете позже как изменять эти числа в записи с
двумя 10-ми местами.
          Отметим,что запись в строке статуса на вашем экране может иногда от-
личаться от того,что вы видите в данном пособии,в зависимости от того,нажали
[GReturnH] или клавишу со стрелкой для ввода данных или переместились к дру-
гой ячейке.

                           GПовторение текстаH
        Теперь добавим "общую черту" при помощи возможности повторения текста:
     > В В9 введите: [\][-][GReturnH]
          Обратная косая черта означает,что следующий символ (в данном случае
тире) будет повторяться.Когда вы нажмете клавишу [GReturnH],символ будет по-
вторяться и заполнит данную ячейку.Вы сделаете общую черту через несколько ми-
нут тренировки.

                                GВвод формулH
          Теперь потренеруйтесь в вводе формулы для получения суммы записей в
колонке В:
     >  В В19 введите: G+sum(b57b9)H
          Запись SUM начинается со знака +,показывающего что это формула,и за-
канчивается определением диапазона,в котором находятся обрабатываемые ячейки.
(Диапазон представлен точкой.)
          Формула говорит: сложить все данные в колонке В начиная со строки 5
до строки 9.Если вы хотите включить какие-либо другие фигуры в общее,то они
д.б. введены между этими 2 ячейками.
          Отметим,что В9 содержит начало вашей общей черты.Использование ее
как последней ячейки в диапазоне является обычной практикой для ЭТ.Это позво-
ляет вам вводить данные в строки над общей чертой и суммировать их.Когда вы
извлекаете данные из ORACLE RDBMS используя общую черту как последнюю ячейку,
то это станет очень важно как хорошая привычка.
          Когда вы нажмете [GReturnH] или клавишу-стрелку,SQL*Calc вычислит
сумму и возвратит значение.Формула,однако,все еще останется как содержимое
ячейки в строке статуса:

     GРисунок 3-4H
             A      B       C      D     E     F      G     H
       1  Sales Forecast Your Name
       2
       3  Sales History:
       4  Season   Year1   Year2  Year3  Year4
       5  Winter       300
       6  Spring       400
       7  Summer       350
       8  Fall         500
       9           -------
      10  Total     ^ 1550  <---|
      11            |           |
      12            |           |
      13            |           |
      14            |           |
      15            |           |
      16            |           |
      17            |           |
      18            |           |
      19            |           |
      20            |           |
      21            |           |
      1% USED  B10(Formula)=Sum(b5.b9) <----|
    Press HELP any time.(Begin SQL with $ formula with +,command wi-
    th /.)          |           |           |
                    |           |           |
              общая черта   текущая     формула в
                             ячейка с    текущей
                             суммой      ячейке

          До сих пор вы учились вводить текст,числа,повторять текст и вводить
формулы.Готовы попытаться использовать команду для передвижения по записям и
их изменения?

                              GВвод командH
          При вводе команды используйте прямую косую черту для сообщения,что
вы вводите команду:
     >  Введите [/] без [GReturnH]
          Появится следующее приглашение:
     Worksheet Range Copy Layout File Print Oracle Quit
     Set options,titles or windows; insert,delete or move rows & cols;
     erase all
     (установите опции,титулы или окна; введите,удалите  или  пере-
     местите строки и колонки; сотрите все)
          Теперь вы находитесь в режиме ввода команд с высвеченной более ярко
командой /Worksheet,которая ниже описана.Вот некоторые общие укащания:
 *  нажимая [-->] или [<--] вы можете высветить разные типы команд в командной
    строке.Отметим,что SQL*Calc выводит всегда описание выбора и его подкоман-
    ды в строке ввода.
 *  вы можете выбрать команду введя ее первую букву или нажав клавишу
    [GReturnH] после того как нужная команда высвечена.
 *  если вы неправильно выбрали команду и хотите прекратить ее выполнение,то
    можете нажать клавишу [GEscapeH] и возвратиться к основному приглашению.
 *  если вам нужна помощь при выборе,то нажмите [GHelpH] и получите дополни-
    тельную информацию.
 *  если вы попытаетесь выбрать несуществующую возможность,то услышите звуко-
    вой сигнал и ничего не изменится.
 *  если вы введете неверную информацию для команды,то услышите звуковой сиг-
    нал и возвратитесь к основному приглашению.Просто начните снова.

                              GКоманда /CopyH
          Для подсчета суммы других колонок,содержащих данные,не нужно вновь
вводит формулу типа SUM как в В10.В ЭТ не нужно набирать формулу несколько
раз.Команда /Copy копирует ее из исходной ячейки во все,которые вы хотите ею
заполнить.
     >  Введите GС H(большой или маленькой буквой) и появится следующее
        приглашение:
     From range? (Return for current cell) Adjust lower-case cell references)
     (Из диапазона? (Return для текущей ячейки) Записать ссылки на ячейку ма-
     ленькими буквами)
          Вам нужно сообщить SQL*Calc какую ячейку вы копируете и в какую яче-
йку нужно ее скопировать.В этом случае вы копируете из единственной ячейки,вот
ваша запись:
     > Введите: Gb10H[GReturnH].
          Теперь вы увидите следующее приглашение:
     To range? (Return for current cell) Adjust lower-case cell references)
     (В диапазон? (Return для текущей ячейки) Записать ссылки на
     ячейку маленькими буквами)
          Далее вы вводите диапазон ячеек в которые нужно копировать,первую и
последнюю координаты,разделенные точкой.Полная запись выглядит следующим обра-
зом:
     Gb10,c10.e10H
          Отметим,что SQL*Calc вводит запятую между диапазонами ИЗ (FROM) и В
(TO).Когда вы снова нажмете [GReturnH],SQL*Calc скопирует формулу SUM во все
строки,на которые вы сослались,введя их маленькими буквами.Поскольку в эти ко-
лонки данные не введены,результаты для них равны 0.
          Давайте применим еще /Copy,на этот раз для копирования общей черты:
     >  Введите: G/CH
                 Gb9[Return]H
                 Gc9.e9[Return]H
          Вот что вы увидите на экране:

     GРисунок 3-5H
             A      B       C      D     E     F      G     H
       1  Sales Forecast Your Name
       2
       3  Sales History:
       4  Season   Year1   Year2  Year3  Year4
       5  Winter       300
       6  Spring       400
       7  Summer       350
       8  Fall         500
       9           ------- ------ ----- ------
      10  Total       1550      0     0      0
      11              ^
      12             /          ^     ^      ^
      13            |           |_____|______|
      14            |           |
      15            |           |
      16            |           |
      17            |           |
      18            |           |
      19            |           |
      20            |           |___________
      21            |           |           |
      1% USED  B10(Formula)=Sum(b5.b9) <----|
    Press HELP any time.(Begin SQL with $ formula with +,command wi-
    th /.)          |           |
                    |           |
                    |      формула,скопированная
                 текущая   во все ячейки в диапазоне
                 ячейка    копирования

 > Теперь переместите текущую яxейку на каждую ячейку строки 10 и прочтите со-
   держание строки статуса.Отметим,что диапазон ячеек подстроен для формирова-
   ния соответствующей колонки.
          Теперь вы видите как создать типичную ЭТ,ввести данные и производить
вычисления.А сейчас рассмотрим типовой подход к введению данных в SQL*Calc.
Вместо ввода записей цен вручную вы можете извлечь их из записей,уже существу-
ющих в ORACLE RDBMS.
          Сперва создадим место для новых данных.Примените команду /Copy для
копирования блока данных без общей черты в новое положение ниже.Блок данных
маркируется задавая верхнюю левую координату ячейки и нижнюю правую:
     >  Введите: G/CH
                 Ga4.e8[Return]H
                 Ga14[Return]H
          Затем примените команду /Range Erase для стирания данных из верхнего
блока:
     >  Введите: G/R Hдля команды /Range
                 GEH для Стирания диапазона
                 Ga4.e8[Return] Hдля стираемого диапазона.
          Ваш экран станет как следующий:

     GРисунок 3-6H
             A      B       C      D     E     F      G     H
       1  Sales Forecast Your Name
       2
       3  Sales History:
       4
       5
       6
       7
       8
       9           ------- ------ ----- ------
      10  Total       1550      0     0      0
      11
      12                                     ^
      13                                     |
      14 Season <  Year1  Year2  Year3  Year4|  ---
      15 Winter  \     300                   |     |
      16 Spring   \    400                   |     |
      17 Summer    \   350                   |     | <---
      18 Fall       |  500                   |     |     |
      19            |                        |   --      |
      20            |                        |           |
      21            |                        |           |
      1% USED  A14(Text)                     |           |
    Press HELP any time.(Begin SQL with $ formula with +,command wi-
    th /.)          |                        |           |
                    |                        |           |
                  текущая ячейка,     формула осталась   |
              с которой началось                    сюда скопированы
                копирование                         данные

          Во время урока 2 вы "перекопировали" информацию в строки 14
     - 18.Но сейчас настало время извлечь историю продаж из ORACLE RDBMS.

         GВход в ORACLE RDBMS - систему управления реляционной БДH
      Сперва войдем в ORACLE RDBMS при помощи запроса командной строки ORACLE.
     >  Введите: G/ОH
          Командная строка /ORACLE появится в нижней части экрана с ярко выс-
веченной командой Execute:
     ORACLE: Execute Show-Info Logon Commit Rollback Option
     Execute Select,Update,Insert,Delete,or Lock statеments or *Copied* cells
     >  переместите курсор на Logon и нажмите [GReturnH] или введите GL.H
     >  введите идентификатор пользователя Gscott Hи нажмите [GReturnH].
     >  введите пароль Gtiger H(он не появится на экране и снова нажмите
        [GReturnH]G.H
          Если вы ввели запись правильно и ORACLE RDBMS готов к работе,то поя-
вится сообщение "Oracle operation performed".
          (Если вы работаете на IBM PC и не загрузили ORACLE RDBMS в память
компьютера до старта SQL*Calc,то вы должны сделать это сейчас.Выполните следу-
ющие шаги механически,они будут объяснены в следующих уроках:
          Для сохранения вашей ЭТ:
     > B A1
          Введите: G/FH
                   GSH
                   Glesson1[Return] Hв ответ на запрос имени файла
                   G[Return]H илиG AH для сохранения всего.
          Для выхода из SQL*Calc:
     >  Введите G/QYH
          Загрузите ORACLE RDBMS введя в ответ на приглашение системы:
     >  GoracleH
          Рестартуйте SQL*Calc:
     >  GsqlcalcH
          Для возврата ЭТ на экран после загрузки ORACLE RDBMS:
     > Введите:  G/FH
                 GRH
                 Glesson1[Return]H
                 G[Return] HилиG АH для извлечения всех.)

                       GИзвлечение данных из ORACLE RDBMSH
          Во время установки SQL*Calc в вашей БД была создана таблица ORACLE
RDBMS по имени "sales1".Эта таблица является упрощенной версией таблицы,кото-
рая может существовать в вашей собственной БД.Для извлечения данных из этой
таблицы вам нужно сделать одну ячейку вашей ЭТ ячейкой SQL,содержащей оператор
SQL SELECT.
     >  B A4 наберите G$H,означающий что А4 стала ячейкой SQL.
          SQL*Calc выведет следующее сообщение:
     TYPE SQL STATEMENT.Press Return to execute it.Usе & before pointing.
     (Введите ОПЕРАТОР SQL.Нажмите Return для его выполнения.Приме ните & пе-
     ред указанием.)
          Теперь создайте оператор примерно такой:
     G$select*into &a4.e8 from sales1H
     >  убедитесь,что ваш  оператор совпадает с приведенным выше и нажмите
        клавишу [GReturnH]G.H
          Примечание: для пользователей других продуктов ORACLE RDBMS точка с
                      запятой в конце оператора SQL не нужна.
          Звездочка (*) в операторе значит "все".Данный оператор говорит: изв-
лечь все из таблицы sales1 и поместить в ЭТ блок а4.е8.Всегда нужно ставить
амперсанд (&) перед любым адресом ячейки в операторе SQL.Этот знак говорит си-
стеме SQL*Calc,что следующие за ним буквы и цифры относятся к ячейкам  ЭТ SQL*
Calc.(Иногда SQL*Calc распознает адрес ячейки и без этого знака,но вы иногда
будете вынуждены вводить амперсанд,так что привыкайте его ставить всегда.
          SQL*Calc извлекает данные из ORACLE RDBMS и выталкивает их в ЭТ,по-
естив информацию в ячейки ЭТ и автоматически вычислив сумму каждой колонки.

     GРисунок 3-7H
             A      B       C      D      E      F     G    H
       1  Sales Forecast Your Name
       2
       3  Sales History:
       4  SEASON <  Year1  Year2  Year3  Year4
       5  Winter |      300    400    500    550 -
       6  Spring |      400    450    525    600  | <----
       7  Summer |      350    400    450    500  |      |
       8  Fall   |      500    600    650    700 -       |
       9         |  ------- ------  ----- ------         |
      10  Total  |     1550   1850   2125   2350         |
      11         |                                       |
      12         |                           ^           |
      13         |                           |           |
      14 Season  | Year1  Year2  Year3  Year4|           |
      15 Winter  \     300                   |           |
      16 Spring   \    400                   |           |
      17 Summer    \   350                   |           |
      18 Fall       |  500                   |           |
      19            |                        |           |
      20            |                        |           |
      21            |                        |           |
      1% USED  A4(SQL,A,A)=select * into &a4.e8 from sales1 <---
    Press HELP any time.(Begin SQL with $ formula with +,command|with /.)          |                        |           |      |
                    |                        |           |      |
             текущая ячейка            формула вычислила | оператор
                                                         | SELECT
                                                     данные из
                                                     таблицы
                                                     ORACLE RDBMS

          Когда вы используете опцию SELECT*,титулы колонок из таблицы автома-
тически появятся большими буквами как это показано в 4 строке.Также отметим,
что тип ячейки - SQL,А,А.Что такое А,А вы узнаете в уроке 4.

                            GКоманда /LayoutH
          М.б. вы предпочитаете видеть строки титулов колонок с записями.
          Это просто:
     >  переместите вашу текущую ячейку в ячейку А4.
     >  введите: G/L Hдля команды /Layout
                 GHH  действовать только на горизонтальные строки
                 GAH  для опции выравнивания
                 G1H  для правой подгонки текста
          Но вам еще захочется,чтобы титул SEASON был выравнен слева.Находясь
в текущей ячейке А4:
     >  введитеG:H G/L Hдля команды /Layout
                 GF H для воздействия только на это поле (ячейку)
                 GAH  для опции выравнивания
                 G2H  для левой подгонки текста
          Отметим,что команда /Layout вносимая в поле перекрывает
     предыдущую команду для выравнивания всей строки справа.
     >  переместите вашу текущую ячейку на А14 и повторите те же самые шаги.
          М.б. вам нужно увидеть записи продаж с двумя 10-ми
      цифрами.Это даже легче:
     >  введите: G/LH  для команды /Layout
                 GWH   для воздействия на всю ЭТ
                 GMH   для формата "деньги" - money
          Ваш экран будет выглядеть следующим образом:

     GРисунок 3-8H
             A      B       C      D       E       F     G    H
       1  Sales Forecast Your Name
       2
       3  Sales History:
       4  SEASON <  YEAR1   YEAR2   YEAR3   YEAR4  <---------
       5  Winter | 300.00  400.00  500.00  550.00-           |
       6  Spring | 400.00  450.00  525.00  600.00 | <----    |
       7  Summer | 350.00  400.00  450.00  500.00 |      |   |
       8  Fall   | 500.00  600.00  650.00  700.00-       |   |
       9         | ------  ------  ------  ------        |   |
      10  Total  |1550.00 1850.00 2125.00 2350.00        |   |
      11         |                                       |   |
      12         |                                       |   |
      13         |                                       |   |
      14 Season  | Year1  Year2  Year3  Year4            |   |
      15 Winter  \     300                               |   |
      16 Spring   \    400                               |   |
      17 Summer    \   350                               |   |
      18 Fall       |  500                               |   |
      19            |                                    |   |
      20            |                                    |   |
      21            |                                    |   |
      2% USED,Format:Money Aligh:Text-Left,Number-Right Width:None
         Dec:None <--------------------|                 |   |
    Press HELP any time.(Begin SQL with|$ formula with +,command with /.)          |                  |                 |   |
                    |                  |                 |   |
             левовыравненный титул     |           все титулы колонок
                                    текущий статус  выравнены справа
                                     формата             |
                                                 все числа в формате
                                                       денег

                         GСохранение ЭТ и команда /QuitH
          Вам  эта ЭТ понадобится в уроке 2,так что ее нужно сохранить:
     >  нажмите [GHomeH] для перемещения текущей ячейки в А1.
     >  введите:  G/FH для командыG H/File
                  S для сохранения - Save - ЭТ
                  Glesson1[Return] Hдля поименования файла ЭТ
                  [GReturnH]G Hили GAH  для сохранения всего.
          Если вы сохраняли и извлекали свой файл раньше,вас спросят,хотите ли
вы сохранить его,чтобы заменить файл урока 1,уже сохраненный ранее.Продолжайте
и сохраните новый файл,более полный.
          Если вы хотите завершить работу в данный момент и выполнить
     урок 2 в другое время,то:
     >  введите: G/QH для команды  /Quit
                 GYH  для ответа Да - Yes

                                   GОбзорH
          Поздравляем! Вы выполнили урок 1.Теперь вы узнали много вещей:
 *  как стартовать SQL*Calc путем ввода Gsqlcalc Hв ответ на приглашение си-
    стемы.
 *  как вводить текст или числа просто набрав их и нажав G[Return]H
        или клавишу-стрелку.
 *  как переходить с одной ячейки на другую при помощи клавиш-стрелок или ко-
    манды GOTO (нажмите [GGoToH] и введите координату ячейки.)
 *  как вводить повторяющийся текст путем ввода обратной косой черты (\) и
    единственного символа; текст копируется во столько ячеек,во сколько необ-
    ходимо.
 *  как суммировать несколько ячеек при помощи формулы суммы,например,
        G+sum(b5.b9)H
     *  применять команду /Copy двумя способами:
         1) Чтобы репродуцировать содержимое единственной ячейки в
            несколько ячеек нужно ввести команду типа:
            G/СH
            Gb10[Return]H
            Gc10.e10[Return]H
         2) Чтобы скопировать содержимое блока ячеек в другое место
            ЭТ путем ввода команды типа:
            G/CH
            Ga4.e8[Return]H
            Ga14[Return]H

        После нажатия последнего G[Return] Hв любом случае произойдет
        копирование с автоматическим уточнением ссылки на ячейку,по-
        ка вы используете маленькие буквы для ввода координат ячеек.
 *  как входить в ORACLE RDBMS из командной строки /Oracle путем
        ввода G/OL Hи ваших идентификатора и пароля.
 *  как установить ячейку SQL путем создания оператора SELECT для
        извлечения данных из таблиц ORACLE RDBMS и помещения их в ЭТ,
        например,G$select*into &a4.e8 from sales1H.
 *  как использовать команду /Layout для форматирования чмсел раз-
        ными способами путем выбора из двух наборов опций:
        1)  Для указания,где форматировать,например:
             GF  Hдля воздействия только на поле (ячейку)
              GHH  для воздействия на строку только
              GWH  для воздействия на всю ЭТ
        2)  Для выбора желаемого эффекта форматирования,например:
              GAH,затемG 2H для правого выравнивания текста
              GAH,затем G1H для левого выравнивания текста
              GMH  для "денежного" формата
 *  передать ЭТ из памяти на диск при помощи
        команды /File Save введя:
         G/FH  для команды /File
         GSH  для сохранения - Save ЭТ
         Glesson1[Return]H G Hдля именования файла ЭТ
         G[Return] AH  для сохранения всего
 *  выходить из программы SQL*Calc при помощи команды /Quit введя:
         G/QH   для команды /Quit
         GYH    для Да - Yes.

                                   GУрок  2H
          В уроке 1 вы извлекли таблицу Sales1 из ORACLE RDBMS.Воoруженные
этим материалом вы можете применить ЭТ для вычисления индекса продаж по сезо-
нам,степень возрастания продаж по годам и предполагаемые приросты продаж.Затем,
в конце текущего года вы можете применить ЭТ для сравнения предполагаемых про-
даж и реальных.Этот урок показывает как такие действия можно выполнить.
         В процессе обучения вы узнаете дополнительно об ЭТ включая следующее:
 *  как извлечь ЭТ,предварительно сохраненную в файле.
 *  как удержать постоянную ссылку на ячейку во время работы команды /Copy.
 *  как написать оператор SQL SELECT для извлечения колонки данных
        из таблицы ORACLE RDBMS.
 *  как распечатать содержимое экрана.
 *  как выключить границы экрана и снова включить их.
 *  как напечатать ЭТ когда она занимает место больше,чем экран.
          Вы можете выполнить этот урок примерно за 35-45 минут,в
     зависимости от того,сколько вы будете печатать вашу ЭТ.

                                 GЗагрузка ЭТH
          Сперва убедитесь,что БДORACLE RDBMS вам доступна и SQL*Calc загруже-
на.Если вам необходима помощь,возвратитесь к началу урока 1.
          Очистите ваш экран при помощи:
     >  введите: G /WH  для команды /Worksheet
                  GEH   для стирания всей ЭТ
                  GYH   для подтверждения
          Когда вы загружаете новую ЭТ на экран,SQL*Calc очистит его автомати-
чески.Но в процессе обучения мы будем вас сперва просить очистить экран,так
что вы сможете наблюдать как появляется ЭТ.Теперь загрузим ЭТ,которую вы сох-
ранили в конце урока 1:
     >  введите: G /FH  для команды /File
                  GRH   для извлечения файла ЭТ
                  Glesson1[Return]H  для поименования ЭТ
                  GAH илиG [Return]H для всей ЭТ.

          Появится ЭТ урока 1:
     GРисунок 3-9H
             A      B       C      D      E      F     G     H      |
       1  Sales Forecast Your Name                                  |
       2    ^----|                                                  |
       3  Sales History:                          --                |
       4  SEASON |  YEAR1   YEAR2   YEAR3   YEAR4   |               |
       5  Winter | 300.00  400.00  500.00  550.00   |               |
       6  Spring | 400.00  450.00  525.00  600.00   |               |
       7  Summer | 350.00  400.00  450.00  500.00   |               |
       8  Fall   | 500.00  600.00  650.00  700.00   |               |
       9         | ------  ------  ------  ------   |               |
      10  Total  |1550.00 1850.00 2125.00 2350.00   | <--           |
      11         |                                  |    |          |
      12         |                                  |    |          |
      13         |                                  |    |          |
      14 Season  | Year1  Year2  Year3  Year4       |    |          |
      15 Winter  \     300                          |    |          |
      16 Spring   \    400                          |    |          |
      17 Summer    \   350                          |    |          |
      18 Fall       |  500                        --     |          |
      19            |                                    |          |
      20            |                                    |          |
      21            |                                    |          |
      2% USED,File operation complreted                  |          |
    Press HELP any time.(Begin SQL with $ formula with +,command wi-|
    th /.)          |                                    |          |
                    |                                    |
                текущая ячейка              все опции восстановлены
                                            в ЭТ,
                                        отметим,что вся электронная
                                        таблица восстановлена

          Если вы не выполнили урок 1,или ваш экран не соответствует
     примеру выше,то примените команду /Worksheet Erase,затем заг-
     рузите демонстрационную ЭТ:
     >  введите:  G/FH
                  GRH
                  Gdemo1[Return]H
                  G[Return] Hили А для загрузки всей ЭТ

                           GКоманда /Worksheet OptionsH
          Перед тем как мы перейдем к уроку 2 вам нужно узнать как изменить
способ,которым SQL*Calc читает координаты ячейки,которые вы задаете.До настоя-
щего времени вы вводили все адреса ячеек маленькими буквами.Скоро вы увидите
как применять большие буквы в адресах ячеек; они устанавливают,что значение
постоянно во время процедуры копирования,в то время как все координаты,задан-
ные маленькими буквами,изменяются.
          Но иногда может потребоваться не принимать во внимание эту опцию;
Gвсе Hкоординаты нужно будет сменить,набраны ли они большими или маленькими
буквами.Для этого вы можете изменить одну опцию в команде /Worksheet Options.
Давайте посмотрим как это делается.
     >  введите: G/WH  для команды /Worksheet
                 GOH   для опций

          Появится следующий экран,заменивший ЭТ:
     GРисунок 3-10H
      |                                                              |
      | ->Cell cursor movement stops when cursor key is released     |
      | ^ Automatic recalculation (after data entry)                 |
      | | Calculate row by row                                       |
      | | Display worksheet borders            - (1) -               |
      | | Automatic scrolling                                        |
      | | During COPY,cell references change as set in next option  |
      | | Cell reference in uppercase=absolute,lowercase=relative    |
      | | Display **SQL** on display/printouts                       |
      | |             -------------------------                      |
      | |                        ^                                   |
      | |                        |                                   |
      | 0% USED,A1(Blank)        |                                   |
      | Move pointer with arrow keys.Press SPACEBAR to change options|
      | RETURN to save.          |           -------                 |
        |                        |              |
        |                    установки,которые  |
       указатель,управляемый   вы можете        |
       стрелкой вниз           менять           |строка приглашения

       - (1) -  Движение курсора ячейки останавливается,когда клавиша
                курсора отпущена
                Автоматическое перевычисление (после ввода данных)
                Вычисление строка за строкой
                Вывод на экран границ ЭТ
                Автоматическая прокрутка
                Во время работы команды СОРУ ссылки на ячейки изменя-
                ются  как установлено в следующей опции
                Ссылки на ячейки большими буквами -абсолютны,малень-
                кими - относительны
                Вывод  **SQL**  на экран/на печать

          Команда  /Worksheet  options создает изображение на экране,содержа-
щее группу опций всей ЭТ.Эти установки являются G сменнымиH,их можно включа-
ть или отключать.Переключатель,который их переключает,это [GSpacebarH]
G-H клавиша пробела.Стрелка (->) указывает на первую опцию.Перемещайте ее
при помощи клавиши вертикальной стрелки пока она не укажет на следующую:
     During COPY,cell references change as set in next option
          Теперь  давайте посмотрим,что произойдет,когда мы изменим эту опцию:
     > нажмите [GSpacebarH] и эта опция будет читаться так:
     All cell references сhange during COPY
     (все ячейки изменяются во время копирования)
          До сих пор при необходимости изменения всех ссылок на ячейки нужно
было их вводить маленькими буквами.Когда данная опция работает,то изменятся
ссылки,написанные и большими и маленькими буквами.
          Вам можно применять вертикальную стрелку для перемещения от опции к
опции.Теперь вы можете применять команду /Worksheet options для изменения этой
опции.
          Для утверждения этой опции и возврата к ЭТ:
     >  нажмите G[Return]H

          Давайте возвратимся к нашему уроку.Перед созданием проекции для за-
писей продаж данного года вам нужно принять во внимание сезонные изменения пу-
тем вычисления индекса сезонов из доступных данных.
     >  в А13 введите: GYearly Index:[Return]H
        Сперва вычислите отношение зимних продаж к году 1 в сумме для первого
        года:
     >  в А15 перепишите текущие данные введя G+b5/B10H,но НЕ нажимайте
        G[Return] Hпока.
          Вместо этого убедитесь,что первая ссылка на ячейку использует мале-
нькую букву GbH,а вторая - большуюG BH.Это позволит сохранить В10 постоян-
ной во время копирования командой /COPY.(Как вы увидите позже.)
     >  теперь нажмите G[Return]H
          Найдите вновь появившееся значение 0.19.

     GРисунок 3-11H
    |         A      B       C      D     E      F     G     H       |
    |   1  Sales Forecast Your Name                                  |
    |   2                                                            |
    |   3  Sales History:                                            |
    |   4  SEASON    YEAR1   YEAR2   YEAR3   YEAR4                   |
    |   5  Winter   300.00  400.00  500.00  550.00                   |
    |   6  Spring   400.00  450.00  525.00  600.00                   |
    |   7  Summer   350.00  400.00  450.00  500.00                   |
    |   8  Fall     500.00  600.00  650.00  700.00                   |
    |   9           ------  ------  ------  ------                   |
    |  10  Total   1550.00 1850.00 2125.00 2350.00                   |
    |  11                                                            |
    |  12                                                            |
    |  13                                                            |
    |  14 Season    Year1   Year2   Year3   Year4                    |
    |  15 Winter     0.19 <------                                    |
    |  16 Spring   400.00        |                                   |
    |  17 Summer   350.00        |                                   |
    |  18 Fall     500.00        |                                   |
    |  19                        |                                   |
    |  20                        |                                   |
    |  21                        |                                   |
    |  2% USED,B15(Formula)=b6/B10  <----                           |
    |Press HELP any time.(Begin SQL with $|formula with +,command wi-|
    |th /.)                      |        |                          |
                                 |        |
                                 |   формула с константой
                        текущая ячейка
                        со значением,
                        вычисленным по
                        формуле

     GКопирование ссылок на ячейкиH
          Следующий шаг - выполнить команду /COPY формулы по строке 15.
     >  введите G/СH
          Отметим сообщение: (Adjust all cell references)
                             (изменение всех ссылок на ячейки)
          Это говорит вам что при копировании и b5 и В10 в формуле
     будут изменены для отображения нового положения колонки.

          Продолжайте,вводя необходимый диапазон ячеек:
     >  введите:  Gb15[Return]H
                  Gc15.e15[Return]H
     >  переместите текущую ячейку вдоль строки 15 и проверьте содер-
        жимое ячеек как это показано в строке статуса,чтобы увидеть
        что все ссылки на ячейки изменены:

     GРисунок 3-12H
    |         A      B       C      D       E       F      G         |
    |   1  Sales Forecast Your Name                                  |
    |   2                                                            |
    |   3  Sales History:                                            |
    |   4  SEASON    YEAR1   YEAR2   YEAR3   YEAR4                   |
    |   5  Winter   300.00  400.00  500.00  550.00                   |
    |   6  Spring   400.00  450.00  525.00  600.00                   |
    |   7  Summer   350.00  400.00  450.00  500.00                   |
    |   8  Fall     500.00  600.00  650.00  700.00                   |
    |   9           ------  ------  ------  ------                   |
    |  10  Total   1550.00 1850.00 2125.00 2350.00                   |
    |  11                                                            |
    |  12                                                            |
    |  13                                                            |
    |  14 Season    Year1   Year2   Year3   Year4                    |
    |  15 Winter     0.19    0.22    0.24    0.23                    |
    |  16 Spring   400.00                     ^                      |
    |  17 Summer   350.00                     |                      |
    |  18 Fall     500.00                     |                      |
    |  19                         ------------                       |
    |  20                        |                                   |
    |  21                        |                                   |
    |  2% USED,B15(Formula)=b6/B10  <----                           |
    |Press HELP any time.(Begin SQL with $|formula with +,command wi-|
    |th /.)                      |        |                          |
                                 |        |
                                 |   формула с константой
                        текущая ячейка   в текущей ячейке
                        со значением,
                        вычисленным по
                        формуле

          Перед продолжением работы с ЭТй нужно изменить опции снова.Вам нужно
возвратить опцию для изменения только ссылок с маленькими буквами во время ра-
боты команды /COPY.
     >  введите: G H/GWH
               GOH -- затем примените стрелку вниз для перемещения к 6 опции
            G[Spacebar]H  для восстановления опции в первоначальное значение
          G[Return]H    для сохранения изменения
          (Обычно вы будете использовать опцию,которая меняет только координа-
ты,написанные маленькими буквами,поэтому будьте осторожны при их использовании
для сохранения постоянных значений.)
          Не измените других опций в это время.Для получения дополнительной
информации по этим опциям обратитесь к описанию
     /Worksheet Options в главе 6,Ввод команд SLASH.

          Теперь примените команду /COPY для колонки В.Выполните
     GOTO В15 и на этот раз попробуйте метод "указания":
     >  введите: /GСH
        копируйте из: находясь в текущей ячейке В15 нажмите G[Return]H
                   в: используя клавишу-стрелку переместитесь в В16,
                      нажмите .,а затем при помощи клавиши-стрелки
                      переместитесь в В18 и нажмите G[Return]H.
          Полная запись выглядит следующим образом: Gb15,b16.b18H
     >  повторите метод указания для копирования формулы в колонки С,D и Е.
          Сейчас ваш экран - следующий:

     GРисунок 3-13H
    |         A      B       C      D       E       F      G         |
    |   1  Sales Forecast Your Name                                  |
    |   2                                                            |
    |   3  Sales History:                                            |
    |   4  SEASON    YEAR1   YEAR2   YEAR3   YEAR4                   |
    |   5  Winter   300.00  400.00  500.00  550.00                   |
    |   6  Spring   400.00  450.00  525.00  600.00                   |
    |   7  Summer   350.00  400.00  450.00  500.00                   |
    |   8  Fall     500.00  600.00  650.00  700.00                   |
    |   9           ------  ------  ------  ------                   |
    |  10  Total   1550.00 1850.00 2125.00 2350.00                   |
    |  11                                                            |
    |  12                                                            |
    |  13                                                            |
    |  14 Season    Year1   Year2   Year3   Year4                    |
    |  15 Winter     0.19    0.22    0.24    0.23 <--                |
    |  16 Spring     0.26    0.24    0.25    0.26    |               |
    |  17 Summer     0.23    0.22    0.21    0.22    |               |
    |  18 Fall       0.32    0.32    0.31    0.30    |               |
    |  19                 ^       -------------------                |
    |  20                 |------|------\                            |
    |  21                        |       \                           |
    |  2% USED,B15(Formula)=b6/B10       \                          |
    |Press HELP any time.(Begin SQL with $|formula with +,command wi-|
    |th /.)                      |        |                          |
                                 |   вычисленные значения
                        текущая ячейка

                             GФункция AVGH
         Теперь,после вычисления соотношений продаж по сезонам к каждому году,
вы можете вычислить общий сезонный индекс путем определения среднего значения.
Чтобы сделать это вы можете использовать функцию AVG таким же способом,как фу-
нкцию SUM в уроке 1.
     >  в F14 введите титул колонки: GAverageH
     >  в F15 введите:G  +avg(b5.e5)/avg(B10.E10) H(будьте осторожны.)
          (По математическим причинам мы не можем просто вычислить среднее ин-
дексов; может появиться неточность.Нам нужно возвратиться к исходным числам.)
     >  введите: G/CH
                 Gf15[Return]H
                 Gf16.f18[Return]H
          Теперь экран будет следующим:

     GРисунок 3-14H
    |         A      B       C      D        E      F      G     H   |
    |   1  Sales Forecast Your Name                                  |
    |   2                                                            |
    |   3  Sales History:                                            |
    |   4  SEASON    YEAR1   YEAR2   YEAR3   YEAR4                   |
    |   5  Winter   300.00  400.00  500.00  550.00                   |
    |   6  Spring   400.00  450.00  525.00  600.00                   |
    |   7  Summer   350.00  400.00  450.00  500.00                   |
    |   8  Fall     500.00  600.00  650.00  700.00                   |
    |   9           ------  ------  ------  ------                   |
    |  10  Total   1550.00 1850.00 2125.00 2350.00                   |
    |  11                                                            |
    |  12                                                            |
    |  13                                                            |
    |  14 Season    Year1   Year2   Year3   Year4   Average          |
    |  15 Winter     0.19    0.22    0.24    0.23      0.22 <--      |
    |  16 Spring     0.26    0.24    0.25    0.26  ->  0.25    |     |
    |  17 Summer     0.23    0.22    0.21    0.22  |   0.22    |     |
    |  18 Fall       0.32    0.32    0.31    0.30  |   0.31    |     |
    |  19                         -----------------|-----------      |
    |  20                        |            -----                  |
    |  21                        |          /                        |
    |  2% USED,F15(Formula)=AVG(b5.e5)/AVG(B10.E10) <----|          |
    |Press HELP any time.(Begin SQL with $|formula with +,command wi-|
    |th /.)                      |        |               |          |
                                 |   вычисленные значения |
                        текущая ячейка                    |
                                                      формула c AVG

          Имея вычисленный индекс,можно продолжить вычисление всех соотношений
продаж от года к году путем ввода дополнительных формул и копирования их.Тогда
вы можете спроецировать соотношение на 5-й год.Наконец в конце 5-го года вы
можете сравнить предполагаемые цифры продаж с действительными.
          Для того,чтобы увидеть такую ЭТ,загрузите вторую демонстрационную
ЭТ,которая прибавит остальные формулы к вашей сушествующей ЭТ:
     >  введите: G/FH
                 GRH
                 Gdemo2[Return]H
                 G[Return]H для всего файла.
          Появится новая строка Growth Rate:

     GРисунок 3-15H
    |         A      B       C      D        E      F      G     H   |
    |   1  Sales Forecast Your Name                                  |
    |   2                                                            |
    |   3  Sales History:                                            |
    |   4  SEASON <  YEAR1   YEAR2   YEAR3   YEAR4                   |
    |   5  Winter | 300.00  400.00  500.00  550.00                   |
    |   6  Spring | 400.00  450.00  525.00  600.00                   |
    |   7  Summer | 350.00  400.00  450.00  500.00                   |
    |   8  Fall   | 500.00  600.00  650.00  700.00                   |
    |   9         | ------  ------  ------  ------                   |
    |  10  Total  |1550.00 1850.00 2125.00 2350.00                   |
    |  11         |                                                  |
    |  12         |                                                  |
    |  13         |                                                  |
    |  14 Season  | Year1   Year2   Year3   Year4   Average          |
    |  15 Winter  |  0.19    0.22    0.24    0.23      0.22          |
    |  16 Spring  |  0.26    0.24    0.25    0.26      0.25          |
    |  17 Summer  |  0.23    0.22    0.21    0.22      0.22          |
    |  18 Fall    |  0.32    0.32    0.31    0.30      0.31          |
    |  19         |                                                  |
    |  20 Growth Rate        0.19    0.15    0.11      0.15          |
    |  21         |                                                  |
    |  10% USED,A4(SQL,A,A)=select * into &a4.e8 from sales1        |
    |Press HELP any time.(Begin SQL with $ formula with +,command wi-|
    |th /.)       |            ^                                     |
             текущая ячейка    |
                          оператор SQL в текущей ячейке

          Если ваша ЭТ не выглядит следующим образом,то примените команду
/Worksheet Erase для стирания и вызовите demo2 снова.
          Для изучения формул роста соотношений переместите вашу текущую ячей-
ку вдоль строки 20.
          Для того,чтобы увидеть остальную ЭТ:
     > нажмите клавишу [GPageDownH]
          В колонке В вы увидите планируемые или спроецированные записи.
     >  переместите текущую ячейку для чтения формулы примененной для вычисле-
     ния этих данных; вот как выглядит строка статуса при переходе,например,в
     колонку В30:

     GРисунок 3-16H
    |         A      B       C      D        E      F      G     H   |
    |  22                                                            |
    |  23  Progected vs.Actual:   Year5                             |
    |  24             Plan   Actual Variance % Var                   |
    |  25  Winter   600.22          -600.22 -100.00                  |
    |  26  Spring   677.39          -677.39 -100.00                  |
    |  27  Summer   583.07    ^     -583.07 -100.00                  |
    |  28  Fall     840.31   /      -840.31 -100.00                  |
    |  29          -------  ------- ------- -------                  |
    |  30    Total 2701.00  | 0.00 -2701.00 -100.00                  |
    |  31          ^        |                                        |
    |  32         /         |                                        |
    |  33         |         |                                        |
    |  34         |         |                                        |
    |  35         |         |                                        |
    |  36         |         |                                        |
    |  37         |         |                                        |
    |  38         |         |                                        |
    |  39         |         |                                        |
    |  40         |         |                                        |
    |  41         |         |                                        |
    |  42         |         |                                        |
    |   7% USED,B30(Formula)=e10*(1+f20)  <------                   |
    |Press HELP any time.(Begin SQL with $ formula|with +,command wi-|
    |th /.)       |         |                     |                  |
                  |        пустая колонка     формула в
              текущая ячейка                  текущей ячейке
              со значением,
              вычисленным по формуле

         Отметим,что проецируемые общие продажи Year5 в В30 вычислены из общих
продаж Year4 и среднего индекса роста продаж в предыдущие 4 года.Проецируемые
продажи для каждого сезона вычисляются как проценты от проецируемых общих про-
даж Year5.

               GИзвлечение одной колонки данных ORACLE RDBMSH
          Теперь вам нужно завершить ЭТ путем извлечения действительных данных
(Actual data) из таблицы продаж в вашей ORACLE RDBMS.В уроке 1 вы записали ба-
зовый оператор SQL SELECT,который поместил всю таблицу в ЭТ.На этот раз вам
нужно взять только данные по продажам для Year5.
         Для целей этого урока вторая демонстрационная таблица,Sales2,содержит
данные для Year5.Вместо применения опции select*,как вы делали в уроке 1,вам
нужно только запросить колонку Year5:
     >  в С25 введите: G$select Year5 into &c25.c28 from sales2H
          Когда ваш оператор станет соответствовать вышенаписанному,
     нажмите G[Return]H
          Появятся требуемые данные и автоматически вычислятся соот-
     ветствующие формулы:

     GРисунок 3-17H
    |         A      B       C      D        E      F      G     H   |
    |  22                                                            |
    |  23  Projected vs.Actual:   Year5                             |
    |  24             Plan   Actual Variance % Var                   |
    |  25  Winter   600.22 > 600.00    -.22    -.04                  |
    |  26  Spring   677.39 | 650.00  -27.39   -4.04                  |
    |  27  Summer   583.07 | 550.00  -33.07   -5.67  <               |
    |  28  Fall     840.31 | 700.00  -140.31 -16.70   |              |
    |  29          ------- |------- ------- -------   |              |
    |  30    Total 2701.00 |2500.00 -201.00   -7.44   |              |
    |  31                  |  ^        ^        ^     |              |
    |  32                 /  /         |        |     |              |
    |  33                /  |          |________|_____|              |
    |  34               /   |                   |                    |
    |  35              /    |                   |                    |
    |  36             /     |                   |                    |
    |  37            /      |                   |                    |
    |  38           /       |                   |                    |
    |  39          /        |                   |                    |
    |  40         |         |                   |                    |
    |  41         |         |                   |                    |
    |  42         |         |                   |                    |
    |   7% USED,C25(SQL,A,A)=select Year5 into &c25.c28 from sales2 |
    |Press HELP any time.(Begin SQL with $ formula with|+,command wi-|
    |th /.)       |         |                   |      |             |
                  |     данные из колонки       |     формула в
           текущая ячейка      таблицы          |     текущей ячейке
                               ORACLE RDBMS     |
                                          все формулы
                                          вычислены заново

          Итак,она выгядит как будто продажи были в 7.44% в год.
     Квартал Fall был особенно плох - -16.70 процента.

                             GРаспечатка экранаH
          Если у вас есть принтер,то можете распечатать отчет на бумаге.Если
вы не имеете принтера,то можете послать файл на диск.Включите принтер.(При ра-
боте на IBM PC убедитесь,что принтер подключен и включен прежде чем выполнить
следующую команду; вы рискуете потерять данные вашей ЭТ если принтер не вклю-
чен.) Теперь введите следующее:
     >  введите: /GPH  для команды /Print
                 GPH   илиG [Return]H для передачи вывода на ваш принтер
                 GSH   распечатать только образ экрана
          Если вы не имеете принтер,то можете послать файл на диск:
     >  введите: G/PH  для команды /Print
                 GFH   чтобы послать вывод в файл
                 Gprint1[Return]H  как имя файла
                 GSH   для сохранения только образа экрана
          Когда вы распечатываете образ экрана или посылаете его в файл,то вы
получите все,выведенное на экран кроме строк статуса,приглашения и ввода в ни-
жней части экрана.Если ваша распечатка выглядит странно,то обратитесь к опции
/Print  Options  в главе 6,Ввод команд SLASH.
          Если нужно распечатку без букв и цифр границ,то примените следующее:
     >  введите: G/WH  для команды Worksheet
                 GOH   для опций
     >  получив экран опций Worksheet,переместите курсор к опции,читаемой так:
        Display worksheet borders (вывести на экран границы ЭТ)
     >  нажмите [GSpacebarH]G Hдля выключения этой опции,чтобы прочитать:
        Do not display worksheet borders (не выводить на экран границы ЭТ)
     >  введите G[Return]H

          Когда вы возвратитесь к ЭТ,вы можете удивиться новому виду,поскольку
границ на экране не будет:

     GРисунок 3-18H
    |      Projected vs.Actual:   Year5                             |
    |                 Plan   Actual Variance % Var                   |
    |      Winter   600.22   600.00    -.22    -.04                  |
    |      Spring   677.39   650.00  -27.39   -4.04                  |
    |      Summer   583.07   550.00  -33.07   -5.67                  |
    |      Fall     840.31   700.00  -140.31 -16.70                  |
    |              -------  ------- ------- -------                  |
    |        Total 2701.00  2500.00 -201.00   -7.44                  |
    |                                                                |
    |   7% USED,C25(SQL,A,A)=select Year5 into &c25.c28 from sales2 |
    |Press HELP any time.(Begin SQL with $ formula with +,command wi-|
    |th /.)                                                          |

     >  примените /Print как ранее для ее распечатки.Образ экрана
        распечатается на вашем принтере или сохранится в файле.
     >  примените /Worksheet Options для включения границ.

                                 GДиапазон печатиH
          Но  эта электроннная таблица занимает больше одного экрана.
     Как распечатать всю ЭТ? Это просто.
     >  введите: /GPH  для команды /Print
                 GPH илиG [Return]H для передачи на принтер
                 GRH илиG [Return]H для печати диапазона ячеек
          Если вы не имеете принтера,введите:
     >           G/PH  для команды /Print
                 Gprint2[Return]H как имя файла
                 GRH илиG [Return]H для ввода диапазона ячеек
          Запрос диапазона печати сопровождается тремя опциями.Появится первое
приглашение:
     Enter RANGE to PRINT (RETURN for entire worksheet)
     (ввести  ДИАПАЗОН для ПЕЧАТИ ([Return] для всей ЭТ)
          Специфицируйте диапазон ячеек,если вы хотите напечатать их,путем
ввода верхней левой и нижней правой координат ячеек.Когда вы хотите убедиться
в правильности задания координат без пустых строк и колонок,выполните следую-
щие шаги:
     >  введите: [GHomeH][.][GEndH][GReturnH]
          Отметим,что клавиша [GEndH] автоматически переместит вас в нижний
правый угол ЭТ,туда где пересекаются последние строка и колонка.
          Далее появится сообщение:
     PRINT BORDERS: None Row Column Both
     (Напечатать границы: Нет Строк Колонок Обе)
         Во время печати диапазона вам не нужно обращаться к команде Worksheet
Options,чтобы включить или выключить границы.Вы можете задать печать номеров
строк,колонок,не задавать их печать или печатать все.
     >  выберите опцию границ,которую вы хотите использовать
          Наконец появится следующее приглашение:
     Enter number of rows to PRINT as page titles ([Return] for none)
     (Введите число строк для печати в качестве титулов ([Return],
     если не нужно ни одной)
          Когда вам нужно распечатать несколько страниц ЭТ,то вы можете приме-
нить эту опцию для повторения нескольких строк титула в качестве заголовка на
каждой странице.В данной ЭТ,например,можно пожелать распечатать титул - строку
1 и пустую строку - строку 2,так что нужно ввести "2".Но,поскольку эта распе-
чатка будет меньше страницы,то вам не нужно ее вводить.
     >  введите: G[Return]H
          Итак вы завершили эти 2 урока и почти стали профессионалом! Теперь
вы знаете как создавать ЭТ используя формулы для автоматических вычислений,как
извлекать всю таблицу из ORACLE RDBMS,как распечатывать результаты.В уроках 3
и 4  мы коснемся более изощренных способов совместной работы ORACLE RDBMS и ЭТ.
          Перед дальнейшей работой сохраните эту ЭТ:
     >  введите: [GHomeH]
     >  введите: G/F   Hдля команды /File
                 GSH    для сохранения (Save) файла ЭТ
     G            lesson2[Return]H  в качестве имени файла
                 GAH илиG [Return]H  для всего файла
     >  примените команду /Worksheet Erase для перехода к уроку 3 или
        команду /Quit для выхода из SQL*Calc.

                                    GОбзорH
          В данном уроке вы узнали как делать следующее:
     *  загружать ЭТ,предварительно сохраненную на диске.Например:
                 G /FH  для команды /File
                  GRH   для извлечения файла ЭТ
                  Glesson1[Return]H  для поименования ЭТ
                  GAH илиG [Return]H для всей ЭТ.
     *  использовать команду /Worksheet Options для установки опций в
        положение "Изменять все ссылки на ячейки во время копирования".
     *  использовать большие буквы для ссылок на ячейки в формулах типа
        +b5/B10  для сохранения постоянной ссылки на ячейку при копировании.
     *  использовать другие функции SQL*Calc типа AVG.
     *  написать оператор SQL SELECT для извлечения колонки данных из таблицы
        ORACLE RDBMS.Например,G$select year5 into &c25.c28 Gfrom sales2H
     *  использовать команду /Print для распечатки только содержимого
        экрана.Например:
                /GPH  для команды /Print
                 GPH   илиG [Return]H для передачи вывода на ваш принтер
                 (или GFH с последующим Gprint1[Return] Hдля передачи
                 вывода в файл.)
                 GSH   распечатать только образ экрана
     *  использовать команду /Worksheet Options для включения или вы-
        ключения границ экрана.
     *  использовать команду /Print для распечатки экрана или диапазо-
        на ячеек больше чем экран.Например:
          Если вы не имеете принтер,то можете послать файл на диск:
                 G/PH  для команды /Print
                 GP HилиG [Return]H для передачи на принтер
                 (Или GFH с последующимG print2[Return]H для передачи вы-
                 вода в файл.)
                 GRH илиG [Return]H для печати диапазона
                 [GHomeH][G.H][GEndH]G [Return]H для всей ЭТ
                 G[Return]H без границ
                 G[Return]H без титулов

                                  GУрок 3H
          В уроке 2 вы извлекли из ORACLE RDBMS действительные цифры продаж на
Year5,сравнив их проектируемыми цифрами на этот год,и вычислили разницу.Вы за-
метили,что продажи упали и что продажи на 4-ый квартал были особенно плохи,
упав относительно планируемых на 17.11 процента.
         В данном уроке вы подробнее рассмотрите цифры продаж на 4-ый квартал,
нарушенные производителем и продавцами.Здесь перечислены некоторые принципы,
которые вы узнаете:
     *  что делать,когда вы не знаете сколько места в электронной
        таблице вам нужно для данных.
     *  что случится,когда SQL*Calc требует больше места для требу-
        емых данных,чем задано в диапазоне INTO.
     *  как ввести пустые строки для создания дополнительного прост-
        ранства между строками в ЭТ.
     *  как "привязать" строки или колонки титулов ЭТ при прокрутке ЭТ.
     *  как рассортировать диапазон данных ЭТ и в алфавитном и в цифровом
        порядке.
     *  как заново выполнить оператор SQL.
     *  как изменить оператор SQL SELECT для сужения выбора.
     *  что случится,когда SQL*Calc нужно меньше пространства,чем задано в
        диапазоне INTO.
     *  как использовать ссылки на ячейки в опраторе SQL,когда нужно
        повторно изменить параметры выбора.
         Вы также попрактикуетесь в некоторых приемах,которые изучили в уроках
1 и 2,например,форматирование и добавление общей строки.Этот урок занимает
примерно 40 минут.

                              GПеред началомH
          Убедитесь,что БД ORACLE RDBMS вам доступна и что SQL*Calc загружена.
Обратитесь к началу урока 1 для помощи.
          Если вы не имеете пустого экрана ЭТ,то примените для его очистки
команду /Worksheet Erase.
         Убедитесь,что вы вошли в ORACLE RDBMS,когда сперва загрузили SQL*Calc
или путем использования входа  /Oracle:
     >  для ввода идентификатора пользователя: GscottH
     >  для ввода пароля:  GtigerH
          Для простоты урока мы добавили таблицу ORACLE RDBMS под названием
Fall5,содержащую сезонные или квартальные итоги для каждого учетчика продавца
в Year5.Эта таблица также показывает итоги работы каждого продавца.

                        GКлауза INTO по умолчаниюH
          Для извлечения информации из Fall5 вы можете создать ячейку SQL,со-
держащую оператор SELECT,подобный оператору,созданному в уроках 1 и 2.В этих
уроках вы узнали,что таблицы Sales содержат строки для каждого сезона.Таким
образом вы можете задать точный диапазон ячеек,куда вводить данные.На этот
раз вы не знаете,сколько продавцов в файле.Так что вы опускаете клаузу INTO и
позволяете SQL*Calc помочь вам вывести:
     >  в А1 введите: G$select * from fall5[Return]H
          SQL*Calc представляет диапазон по умолчанию Gтекущих ячеек:H
Gтекущая ячейкаH в данном случае al.a1.Затем она помещает первую строку дан-
ных,которые вы хотите иметь,в ЭТ,в данном случае титулы колонок.Вы затем уви-
дите сообщение в нижней части экрана:

     GРисунок 3-19H
    |         A       B      C     D     E      F      G      H      |
    |   1  SALESPER CUSTOMER AMOUNT                                  |
    |   2     ^                                                      |
    |   3     |                                                      |
    |   4     |                                                      |
    |   5     |                                                      |
    |   6     |                                                      |
    |   7     |                                                      |
    |   8     |                                                      |
    |   9     |                                                      |
    |  10     |                                                      |
    |  11     |                                                      |
    |  12     |                                                      |
    |  13     |                                                      |
    |  14     |                                                      |
    |  15     |                                                      |
    |  16     |                                                      |
    |  17     |                                                      |
    |  18     |                                                      |
    |  19     |                                                      |
    |  20     |                                                      |
    |  21     |                                                      |
    |  0% USED| A1 (Blank) <-------|                                 |
    |OVERFLOW: 30 ROWS.Insert Overwrite  Stop   <-----              |
    |Insert enough rows to hold the overflow data      |             |
              |                    |                   |
         текущая ячейка,  оператор SQL не появится  |
         содержащая первую   здесь до полного          |
         строку извлеченных      выполнения    запись о переполнении
         данных из ORACLE RDBMS

          Введите достаточно строк для хранения переполняющих данных.
          Команда GInsert Hвысвечена и вторая строка читается: введите дос-
таточно строк для хранения переполняющих данных.Примените клавишу-стрелку для
просмотра других опций.

                             GПереполнениеH
          Условие переполнения GOverflow Hнаступает,когда вы извлекаете дан-
ные - SELECT - из вашей БД и пытаетесь ввести их - INTO - в диапазон ячеек,
слишком маленький для извлекаемых данных.SQL*Calc информирует вас об этом и
позволяет вам решать,нужны ли вам дополнительные данные.
          Поскольку в этот момент другие записи не были сделаны в
     ЭТ,вы можете безопасно применить опцию Overwrite:
     >  введите: GОH
          Оставшиеся строки займут место в этой ЭТ:

     GРисунок 3-20H
    |         A       B      C       D     E     F     G      H      |
    |   1  SALESPER CUSTOMER AMOUNT                                  |
    |   2  Allen    Acme Tru       30  ---                           |
    |   3  Allen    Hillside       20     |                          |
    |   4  Ward     Cozy Fur       30     |                          |
    |   5  Garcia   Gollub G       20     |                          |
    |   6  Martin   Deli Del       30     |                          |
    |   7  Wong     Mercury        40     |                          |
    |   8  Clark    Perfect        10     |                          |
    |   9  Schmidt  Ski Shut       20     |                          |
    |  10  Ward     Tri-City       40     |---------                 |
    |  11  Allen    Southsid       20     |         |                |
    |  12  Garcia   Airport        10     |         |                |
    |  13  Martin   Best Del       10     |         |                |
    |  14  Ward     U-Haul         20     |         |                |
    |  15  Garcia   Vans Gal       10     |         |                |
    |  16  Clark    Bayside        30     |         |                |
    |  17  Allen    XYZ Pick       10     |         |                |
    |  18  Wong     Speedy D       10     |         |                |
    |  19  Clark    Pack and       20     |         |                |
    |  20  Garcia   Intra-Tr       20     |         |                |
    |  21  Martin   Trucks f       10  ---          |                |
    |  7% USED  A1 (SQL,A,A)=select * into &a1.c31 from fall5 <--    |
    |Press HELP any time.(Begin SQL with $,formula with +,command|wi-|
    |th /.)                                         |            |   |
    |__________________^____________________________|____________|___|
                       |                            |            |
                 колонка слишком узка, все строки извлечены      |
                 чтобы хранить полные                            |
                 данные                           оператор SQL  SELECT
                                                      в текущей ячейке

          Строка статуса показывает,что А1 сейчас стала ячейкой SQL,хранящей
оператор SQL.Отметим,что в строке статуса указан диапазон SQL INTO как а1.с31.
Ваши передаваемые данные заполнили эти ячейки.
          Чтобы увидеть остаток данных ЭТ:
     >  нажмите: [GPageDownH]

     GРисунок 3-21H
    |         A       B      C       D     E      F    G      H      |
    |  22  Wong   < City Tra       30                                |
    |  23  Schmidt| ist Dept       40                                |
    |  24  Clark  | Road Run       20                                |
    |  25  Ward   | Assured        40                                |
    |  26  Garcia | Ace Appl       30                                |
    |  27  Clark  | Santo De       10                                |
    |  28  Wong   | Valley G       20                                |
    |  29  Martin | Ai Cemen       40                                |
    |  30  Allen  | Aki Nurs       30                                |
    |  31  Allen /  Easy Lan       30                                |
    |  32       /                                                    |
    |  33      /                                                     |
    |  34     |                                                      |
    |  35     |                                                      |
    |  36     |                                                      |
    |  37     |                                                      |
    |  38     |                                                      |
    |  39     |                                                      |
    |  40     |                                                      |
    |  41     |                                                      |
    |  42     |                                                      |
    |  7% USED| A22(Text)=Wong <---|                                 |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)   |                    |                                 |
              |              содержимое текущей ячейки
       текущая ячейка для
       нового окна

          Для возврата в А1:
     >  нажмите: [GHomeH]

                           GЕще о форматированииH
          ЭТ выглядит сжатой и колонка В слишком узка,так что вы не сможете
прочитать все данные в ней.Для упрощения чтения вам нужно сделать некоторые
изменения при помощи команды /Layout.
          Сперва расширим колонки А и В:
     >  при текущей ячейке в колонке А введите:
               /GLH   для команды /Layout
               GCH    для колонки
               GWH    для параметра ширина Width
               G12H   для ширины колонки
               G[Return]H
     >  переместите текущую ячейку в колонку В.
     >  примените команду /Layout снова:
               /GLH
               GCH
               GWH
               G15H
               G[Return]H
          Теперь вы можете прочитать весь текст:

     GРисунок 3-22H
    |         A          B           C     D    E    F    G    H     |
    |   1  SALESPERSON CUSTOMER      AMOUNT                          |
    |   2  Allen       Acme Trucking       30                        |
    |   3  Allen       Hillside Dairy      20                        |
    |   4  Ward        Cozy Furniture      30                        |
    |   5  Garcia      Gollub Garage       20                        |
    |   6  Martin      Deli Delivery       30                        |
    |   7  Wong        Mercury Towing      40                        |
    |   8  Clark       Perfect Movers      10                        |
    |   9  Schmidt     Ski Shuttle         20                        |
    |  10  Ward        Tri-City Bus        40                        |
    |  11  Allen       Southside Tow       20                        |
    |  12  Garcia      Airport Shuttle     10                        |
    |  13  Martin      Best Delivery       10                        |
    |  14  Ward        U-Haul              20                        |
    |  15  Garcia      Vans Galore         10                        |
    |  16  Clark       Bayside Hauling     30                        |
    |  17  Allen       XYZ Pickup          10                        |
    |  18  Wong        Speedy Delivery     10                        |
    |  19  Clark       Pack and Move       20                        |
    |  20  Garcia      Intra-Transport     20                        |
    |  21  Martin      Trucks for Hire     10                        |
    |  7% USED  B1 (Text)=CUSTOMER                                   |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)   ^____________^                                         |
                       |
                 колонки расширены

          Далее  отформатируем  колонку С в денежном формате и выравним
     титул колонки:
     >  переместим текущую ячейку в колонку С.
     >  введите:
                /GLH  для команды /Layout
                GCH   для колонки
                GMH   для денежного вывода
     >  с текущей ячейкой в С1 >  введите:
                G/LH  для команды /Layout
                GFH   для поля (Field)
                GAH   для выравнивания
                G1H   для вывода текста справа

          Для еще большего удобства введем титул в ЭТ.Сперва прибавим немного
места в верхней части таблицы путем введения 2 строк:
     >  с текущей ячейкой в строке 1 введите:
               /GWH  для команды /Worksheet
               GIH   для ввода строки в ЭТ
               G[Return]H  для строки
               G[Return]H  для текущей строки
     >  повторите те же команды для введения 2-ой строки.
          Теперь введите титул ЭТ:
     >  в А1 введите:
               GActual Sales for Fall5:[Return]H
          Ваша ЭТ будет выглядеть следующей:

     GРисунок 3-23H
    |         A          B           C     D    E    F    G    H     |
    |   1  Actual Sales for Fall5:                                   |
    |   2     ^----                                                  |
    |   3  SALESPERSON CUSTOMER       AMOUNT                         |
    |   4  Allen   |   Acme Trucking   30.00                         |
    |   5  Allen   |   Hillside Dairy  20.00                         |
    |   6  Ward    |   Cozy Furniture  30.00                         |
    |   7  Garcia  |   Gollub Garage   20.00                         |
    |   8  Martin  |   Deli Delivery   30.00                         |
    |   9  Wong    |   Mercury Towing  40.00                         |
    |  10  Clark   |   Perfect Movers  10.00                         |
    |  11  Schmidt |   Ski Shuttle     20.00                         |
    |  12  Ward    |   Tri-City Bus    40.00                         |
    |  13  Allen   |   Southside Tow   20.00                         |
    |  14  Garcia  |   Airport Shuttle 10.00                         |
    |  15  Martin  |   Best Delivery   10.00                         |
    |  16  Ward    |   U-Haul          20.00                         |
    |  17  Garcia  |   Vans Galore     10.00                         |
    |  18  Clark   |   Bayside Hauling 30.00 <--------               |
    |  19  Allen   |   XYZ Pickup      10.00          |              |
    |  20  Wong    |   Speedy Delivery 10.00          |              |
    |  21  Clark   |   Pack and Move   20.00          |              |
    |  7% USED  A1 (Text)=Actual Sales for Fall5:     |              |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)        |                                  |              |
             текущая ячейка                      числа в денежном
                                                 формате

     >  переместите текущую ячейку в А3 и отметьте,что диапазон INTO
        автоматически скорректирован для отображения нового положения
        блока  данных из ORACLE RDBMS.

                             GБлокировка титулаH
          Когда вы имеете несколько экранов данных и хотите прокрутить их или
перелистать для просмотра отстатка,SQL*Calc позволяет вам блокировать ваши ти-
тулы в одном месте.Сделайте следующее:
   > нажмите клавишу [GHomeH],чтобы убедиться,что вы находитесь в начале ЭТ.
   >  переместите текущую ячейку в строку 3.
   >  введите:  /GWH  для команды /Worksheet
                  GTH   для установки титулов ЭТ
                  GHH   для блокировки строки или горизонтали
   >  нажмите стрелку вниз для прохода через строку 21 к низу ЭТ.
   >  посмотрите,что случится при нажатии [GPageDownH] и [GPageUpH].
          Неважно где вы находитесь в ЭТ,ваши титулы колонок всегда будут
идентифицировать данные.

     GРисунок 3-24H
    |         A          B            C    D    E   F    G     H     |
    |   1  Actual Sales for Fall5:              ----                 |
    |   2                                           |--              |
    |   3  SALESPERSON CUSTOMER        AMOUNT   ----   |             |
    |  22  Garcia <    Intra-Transport  20.00          |             |
    |  23  Martin |    Trucks for Hire  10.00          |             |
    |  24  Wong   |    City Transit     30.00          |             |
    |  25  Schmidt|    1st Dept.Store   40.00          |             |
    |  26  Clark  |    Road Runner      20.00          |             |
    |  27  Ward   |    Assured Moving   40.00          |             |
    |  28  Garcia |    Ace Appliances   30.00          |             |
    |  29  Clark  |    Santo Delivery   10.00          |             |
    |  30  Wong   |    Valley Garage    20.00          |             |
    |  31  Martin |    Ai Cement        40.00          |             |
    |  32  Allen  |    Aki Nursey       30.00          |             |
    |  33  Allen /     Easy Lanscape    30.00          |             |
    |  34       /                                      |             |
    |  35      /                                       |             |
    |  36     |                                        |             |
    |  37     |                                        |             |
    |  38     |                                        |             |
    |  39     |                                        |             |
    |  7% USED| A22(Text)=Garcia <-|                   |             |
    |Press HELP any time.(Begin SQL with $,formula with|+,command wi-|
    |th /.)   |                    |                   |             |
              |              содержимое текущей ячейки |
       текущая ячейка                                  |
                                               три строки блокированы
                                               как титулы

                           GСортировка диапазонаH
          Когда вы извлекли данные ORACLE RDBMS в ЭТ,вам может понадобиться
отсортировать данные.
          В данной ЭТ,например,может потребоваться записать строки в алфавит-
ном порядке по фамилиям продавцов.(В следующих процедурах "возрастающий" поря-
док значит алфавитный порядок для текста и 1,2,3...для чисел."Убывающий" - на-
оборот.)
     >  введите:  /GR  Hдля команды /Range
                  GSH   для сортировки в диапазоне
                  Ga4.c33[Return]H  для сортируемого диапазона
                  GA[Return]H  для колонки-ключа
                  GA  [Return]H  для сортировки в возрастающем порядке

     GРисунок 3-25H
    |         A          B           C     D    E    F    G    H     |
    |   1  Actual Sales for Fall5:                                   |
    |   2                                                            |
    |   3  SALESPERSON CUSTOMER       AMOUNT                         |
    |   4  Allen   <   Acme Trucking   30.00                         |
    |   5  Allen   |   Hillside Dairy  20.00                         |
    |   6  Allen   |   Southside Tow   20.00                         |
    |   7  Allen   |   XYZ Pickup      10.00                         |
    |   8  Allen   |   Aki Nursery     30.00                         |
    |   9  Allen   |   Easy Landscape  30.00                         |
    |  10  Clark   |   Perfect Movers  10.00                         |
    |  11  Clark   |   Baysid Haulting 30.00                         |
    |  12  Clark   |   Pack and Move   20.00                         |
    |  13  Clark   |   Road Runner     20.00                         |
    |  14  Clark   |   Santo Delivery  10.00                         |
    |  15  Garcia  |   Gollub Garage   20.00                         |
    |  16  Garcia  |   Airport Shuttle 10.00   <------               |
    |  17  Garcia  |   Vans Galore     10.00          |              |
    |  18  Garcia  |   Intra-Transport 20.00          |              |
    |  19  Garcia  |   Ace Appliences  30.00          |              |
    |  20  Martin  |   Deli Delivery   30.00          |              |
    |  21  Martin  |   Best Delivery   10.00          |              |
    |  5% USED  A4 (Text)=Allen                       |              |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)        |                                  |              |
             текущая ячейка                   строки,рассортированные
                                              по алфавиту в колонке-
                                              -ключе А

          Теперь попробуем отсортировать строки по сумме (Amount) в
     уменьшающемся порядке:
     >  введите: /GRH
                 GSH
                 GA4.[End][Return] H
                 GC[Return]H  для сортировки по колонке С
                 GDH  для сортировки в уменьшающемся порядке
          Вы получите следующее:

     GРисунок 3-26H
    |         A          B           C     D    E    F    G    H     |
    |   1  Actual Sales for Fall5:                                   |
    |   2                                                            |
    |   3  SALESPERSON CUSTOMER       AMOUNT                         |
    |   4  Martin  <   A1 Cement       40.00                         |
    |   5  Schmidt |   1st Dept.Store  40.00                         |
    |   6  Ward    |   Assured Moving  40.00                         |
    |   7  Ward    |   Tri-City Bus    40.00                         |
    |   8  Wong    |   Mercury Towing  40.00                         |
    |   9  Allen   |   Acme Trucing    30.00                         |
    |  10  Allen   |   Aki Nursery     30.00                         |
    |  11  Allen   |   Easy Landscape  30.00                         |
    |  12  Clark   |   Bayside Hauling 30.00                         |
    |  13  Garcia  |   Ace Appliences  30.00                         |
    |  14  Martin  |   Deli Delivery   30.00                         |
    |  15  Ward    |   Cozy Furniture  30.00                         |
    |  16  Wong    |   City Transit    30.00   <------               |
    |  17  Allen   |   Hillside Dairy  20.00          |              |
    |  18  Allen   |   Southside Tow   20.00          |              |
    |  19  Clark   |   Pack and Move   20.00          |              |
    |  20  Clark   |   Road Runner     20.00          |              |
    |  21  Garcia  |   Gollub Garage   20.00          |              |
    |  5% USED  A4 (Text)=Martin                      |              |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)        |                                  |              |
            текущая ячейка               данные,рассортированные по
                                         числам в колонке С по убыванию

                      GРедактирование оператора SQLH
          Если потребуется восстановить исходный порядок,то вам нужно выполни-
ть снова команду,хранимую в ячейке SQL как оператор SQL SELECT.Поскольку ячей-
ка SQL (А3) теперь находится в области блокированного титула,сперва нужно от-
менить блокировку титула:
     >  введите: /GWH  для команды /Worksheet
                 GTH  для установки или переустановки титулов ЭТ
                 GCH  для очистки титула
          Простой способ для выполнения заново одной ячейки SQL -
     применить клавишу [GEditH]:
     >  переместите текущую ячейку в А3
     >  нажмите [GEditH],а затемG [Return]H
          ЭТ будет восстановлена в исходном порядке.Теперь предположим,что вы
хотите создать отчет по продажам только для одного продавца - например,Wong.
Вам нужно отредактировать ячейку SQL новым описанием.
     >  нажмите [GEditH]
          После этого вы увидите строку инструкций:
     EDIT: Use arrow keys,HOME,END,INSERT and DELETE.Press RETURN when done.
     (EDIT: используйте клавиши-стрелки,HOME,END,INSERT и DELETE.
      Нажмите [Return] по окончании.)
          Эти инструкции рассматриваются в экране "HELP" (нажмите клавишу
[GHelpH],чтобы его увидеть.) Теперь вы просто добавите нужное в вашу ячейку
SQL; используйте клавишу возврата (backspace).
          Содержимое ячейки теперь читается:
     G$select * into &a3.c33 from fall5H
     >  добавьте клаузу WHERE: $select*into &a3.c31 from fall5 GwhereH
        Gsalesperson='Wong'H
          Вам  не  нужно беспокоиться о редактировании диапазона INTO
     поскольку SQL*Calc поможет сделать доводки автоматически.
     >  убедитесь,что ваш оператор соответствует примеру выше и нажмите:
        G[Return]H

          SQL*Calc автоматичеки выполнит заново оператор с новым опи-
     санием и появится новое сообщение в нижней части экрана:

     GРисунок 3-27H
    |         A          B           C     D    E    F    G    H     |
    |   1  Actual Sales for Fall5:                                   |
    |   2                                                            |
    |   3  SALESPERSON CUSTOMER       AMOUNT                         |
    |   4  Wong    ^   Mercury Towing  40.00                         |
    |   5  Wong    |   Speedy Delivery 10.00                         |
    |   6  Wong    |   City Transit    30.00                         |
    |   7  Wong    |   Valley Garage   20.00                         |
    |   8          |                                                 |
    |   9          |                                                 |
    |  10          |                                                 |
    |  11          |                                                 |
    |  12          |                                                 |
    |  13          |                                                 |
    |  14          |                                                 |
    |  15          |                                                 |
    |  16          |                                                 |
    |  17          |                                                 |
    |  18          |                                                 |
    |  19          |                                                 |
    |  20          |                                                 |
    |  21          |                                                 |
    |  7% USED  A3(SQL,A,A)=SELECT * into &a3.c33 FROM FALL5  <--    |
    |UNDERFLOW: 26 FEWER ROWS.GStopH  Delete  <-------           |   |
    |Leave the unused rows as they are                |          |   |
                   |                                  |          |
            текущая ячейка               заметка о переполнении  |
                                                                 |
                                           оператор в а3 не изменился
                                           до окончания выполнения

          Переместите высвечивание на GDeleteH,чтобы увидеть следующее
     сообщение.

                              GНедокомплектH
          Сигнал GUnderflow Hпоказывает,что где-то в диапазоне INTO оператор
SQL SELECT,который вы выполняете,даст результат больше,чем можно хранить в
ячейке.Отметим,что дополнительные ячейки были пусты,хотя диапазон INTO настро-
ен.Опция GStop Hоставит диапазон INTOG Hкак есть.Опция GDeleteH удаляет
пустые строки и подстраивает диапазон INTO для помещения текущих данных.
     >  нажмите: GD Hдля команды Delete - удалить

                         GДобавление общей чертыH
          Возможно нужно увидеть общие продажи для данного продавца.
     Добавьте общую черту как это уже было в уроке 1:
     >  в С8  введите: [\][-]G[Return]H
     >  в В9  введите:G Total:[Return]H
     >  в С9  введите:G +sum(c4.c8)[Return]H
          Ваш экран будет содержать следующее:

     GРисунок 3-28H
    |         A          B           C     D    E    F    G    H     |
    |   1  Actual Sales for Fall5:                                   |
    |   2                                                            |
    |   3  SALESPERSON CUSTOMER       AMOUNT                         |
    |   4  Wong        Mercury Towing  40.00                         |
    |   5  Wong        Speedy Delivery 10.00                         |
    |   6  Wong        City Transit    30.00                         |
    |   7  Wong        Valley Garage   20.00                         |
    |   8                           --------                         |
    |   9           ----------------> 100.00                         |
    |  10          |                                                 |
    |  11          |                                                 |
    |  12          |                                                 |
    |  13          |                                                 |
    |  14          |                                                 |
    |  15          |                                                 |
    |  16          |                                                 |
    |  17          |                                                 |
    |  18          |                                                 |
    |  19          |                                                 |
    |  20          |                                                 |
    |  21          |                                                 |
    |  2% USED  C9(Formula)=SUM(c4.c8)   <------------               |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)        |                                  |              |
           текущая ячейка с вычисленной суммой        |
                                                 формула в С9

                GОператор SQL,использующий ссылки на ячейкиH
          Обычно бывает необходимость рассмотреть более чем одного продавца из
таблицы.Вместо редактирования содержимого ячейки SQL всяий раз,можно поступить
проще.Вы испольуете ссылку на ячейку в операторе SELECT и сделаете изменения в
ячейке,на которую ссылаетесь.Вот как это работает:
     >  в А2  введите:  GAllenH
     >  в А3  введите:  G[Edit]H
     >  отредактируйте оператор SELECT отбросив 'Wong' и введя G&a2H.
          Вы должны перед ссылкой на ячейку поставить &,так что
     SQL*Calc будет знать,что вы ссылаетесь на ячейку.
          Отредактированная строка будет читаться:
     $select * into &a3.c8 from fall5 where salesperson = &a2
     >  нажмите G[Return] Hи появится следующее сообщение:
     OVERFLOW: 2 EXTRA ROWS.Insert  Overwrite  Stop
          На этот раз вы НЕ должны переписывать,поскольку новая ин-
     формация будет стирать общую линию.Вам нужно ввести:
     >  введите: G[Return] Hили GI Hдля команды Insert
          После команды Insert ваш экран будет иметь следующий вид:

     GРисунок 3-29H
    |         A          B           C     D    E    F    G    H     |
    |   1  Actual Sales for Fall5:                                   |
    |   2  Allen  <-----------------------------                     |
    |   3  SALESPERSON CUSTOMER       AMOUNT    |                    |
    |   4  Allen   ^   Acme Trucking   30.00    |                    |
    |   5  Allen   |   Hillside Dairy  20.00    |                    |
    |   6  Allen   |   Southside Tow   20.00    |                    |
    |   7  Allen   |   XYZ Pick Up     10.00    |                    |
    |   8  AlLen   |   Aki Nursery     30.00    |                    |
    |   9  Allen   |   Easy Landscape  30.00    |                    |
    |  10          |                 -------    |                    |
    |  11          |   Total:         140.00    |                    |
    |  12          |                            |                    |
    |  13          |                            |                    |
    |  14          |                            |                    |
    |  15          |                            |                    |
    |  16          |                            |                    |
    |  17          |                            |                    |
    |  18          |                            |                    |
    |  19          |                            |                    |
    |  20          |                            |                    |
    |  21          |                            |                    |
    |  2% USED  A3(SQL,A,A)=SELECT * into &a3.c9|FROM FALL5 where    |
    |           salesperson = &a2   <---|       |                    |
    |Press HELP any time.(Begin SQL with|$,formula with +,command wi-|
    |th /.)        |                    |       |                    |
           текущая ячейка       критерий выбора |
                                находится в     |
                                ячейке а3    критерий,выборки   для
                                             оператора SQL SELECT

          Сейчас вы будете рассматривать,что делает Garcia:
     >  в А2 введите: GGarciaH
     >  в A3 нажмите: G[Edit]H и затемG [Return]H
          Это сообщение появится:
     UNDERFLOW: 1 FEWER ROWS.Stop  Delete
          На этот раз вам нужно удалить дополнительную строку для
     ввода общей черты:
     >  введите: GDH
          После выбора Delete экран станет выглядеть так:

     GРисунок 3-30H
    |         A          B           C     D    E    F    G    H     |
    |   1  Actual Sales for Fall5:                                   |
    |   2  Garcia <-----------------------------                     |
    |   3  SALESPERSON CUSTOMER       AMOUNT    |                    |
    |   4  Garcia  ^   Gollub Garage   20.00    |                    |
    |   5  Garcia  |   Airport Shuttle 10.00    |                    |
    |   6  Garcia  |   Vans Galore     10.00    |                    |
    |   7  Garcia  |   Intra-Transport 20.00    |                    |
    |   8  Garcia  |   Ace Appliances  30.00    |                    |
    |   9          |                 -------    |                    |
    |  10          |                   90.00    |                    |
    |  11          |                            |                    |
    |  12          |                            |                    |
    |  13          |                            |                    |
    |  14          |                            |                    |
    |  15          |                            |                    |
    |  16          |                            |                    |
    |  17          |                            |                    |
    |  18          |                            |                    |
    |  19          |                            |                    |
    |  20          |                            |                    |
    |  21          |                            |                    |
    |  2% USED  A3(SQL,A,A)=SELECT * into &a3.c9|FROM FALL5 where    |
    |           salesperson = &a2               |                    |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)        |                            |                    |
           текущая ячейка                       |
                                      измененный критерий

          В этой точке вам может потребоваться сохранить ЭТ:
     >  введите: /GFH
                 GSH
                 Glesson3[Return]H
                 G[Return]H

          Продолжайте изменять имена продавцов в А2 если вы хотите продолжить
эксперимент с переполнением и исчезновением.Каждый раз при изменении имени вам
нужно выполнить ячейку SQL снова при помощи клавиши [GEditH]G.HВ любой ме-
сте вы можете применить команду /Worksheet Erase для очистки экрана и перезаг-
рузить урок 3.
     >  когда вы достаточно поработали,примените команду /Worksheet
        Erase или /Quit.

                                   GОбзорH
          В этом уроке вы узнали как делать следующее:
     *  исключить клаузу INTO из оператора SELECT и позволить SQL*Calc переда-
        ть диапазон INTO по умолчанию текущей ячейки: текущая ячейка.
     *  управлять условиями переполнения когда объем данных,извлеченных из
        ORACLE RDBMS слишком велик для диапазона INTO выполняемого оператора
        SELECT.Можно выбрать одну из следующих опций:
          *  переписать - заменить оставшиеся данные в строках ниже,
             переписав все существующие данные.
          *  ввести - ввести новые строки в диапазон INTO.
          *  стоп - отбросить лишние данные.
     *  "Блокировать" строки титула на одном месте при помощи команды
         /Worksheet Title с опцией Horizontal.
     *  рассортировать диапазон данных,не содержащий ячейки SQL,при помощи ко-
        манды /Range Sort в возрастающем или убывающем порядках.
     *  заново выполнить ячейку SQL при помощи клавиши [GEditH].
     *  добавить клаузу WHERE в оператор SELECT для сужения объема из-
        влекаемых данных.Например:
          G$select*from fall5 where salesperson='Wong'H
     *  управлять условием недокомплекта,когда объем данных,извлеченных из
        ORACLE RDBMS слишком мал для заданного диапазона INTO выполняемого
        оператора SQL SELECT.Можно выбрать одну из следующих опций:
          *  удалить - удалить лишние пустые строки.
          *  стоп - продолжать работу без удаления пустых строк.
     *  подставить ссылку на ячейку в клаузе WHERE оператора SELECT для объек-
        та в операторе,который нужно часто изменять.Например:
          G$select from fall5 where salesperson = &a2H

                                  GУрок 4H
         В уроке 3 вы рассматривали данные по продажам для каждого продавца во
время 4-ого квартала в Year5.В данном уроке вы обратите внимание на то,почему
продажи сокращаются.Из новой таблицы вы извлечете квоту и области продаж для
каждого продавца и затем сравните квоту с продажами каждого.этот урок занимает
примерно 35 минут.
          Кроме прочего вы узнаете как делать следующее:
     *  получить листинг ваших таблиц в ORACLE RDBMS
     *  создать новую таблицу ORACLE RDBMS из вашей ЭТ
     *  написать оператор SELECT,который не вводит данные в свою собственную
        ячейку,но посылает их в другую часть ЭТ
     *  выбрать опции на разных уровнях и увидеть как они взаимодейст-
        вуют друг с другом
     *  соединить данные из двух таблиц в ЭТ
     *  построить серии ячеек SQL
     *  изменять критерии выбора и выполнять заново серии ячеек SQL.

                               GПеред началомH
          Убедитесь,что БД ORACLE RDBMS вам доступна и что SQL*Calc загружена.
Обратитесь к началу урока 1 для помощи.
      Если вы не имеете пустого экрана ЭТ,то примените для его очистки команду
/Worksheet Erase.
          Убедитесь,что вы вошли в ORACLE RDBMS,когда сперва загру-
     зили SQL*Calc или путем использования входа  /Oracle:
     >  введите: G/OH  для команды /Oracle
                 G  LH   для входа в ORACLE RDBMS
     >  для ввода идентификатора пользователя введите: GscottH
     >  для ввода пароля введите:  GtigerH

     GКоманда /Oracle Show-InfoH
          Для поиска имени новой таблицы данных по продажам и квот,
     используемых в данном уроке нужно сделать следующее:
     >  введите: /GОH
          Появится командная строка ORACLE:
     ORACLE: Execute Show-Info Logon Commit Rollback Options
     >  введите: GS Hили переместите курсор в Show-Info и нажмите G[Return]H
          Появится следующее сообщение:
     ORACLE SHOW-INFO: Error SQL-Cells My-Tables All-Tables
     >  введите: GM Hили переместит курсор к My-Tables и нажмите G[Return]H
          Появится каталог всех таблиц,идентифицированных текущим
     именем пользователя:

     GРисунок 3-31H
    |     Press any key to proceed                                   |
    |                                                                |
    |  SALES1                                                        |
    |  SALES2                                                        |
    |  FALL5                                                         |
    |  QUOTA                                                         |
    |                                                                |
    |   0% USED,A1(Blank)                                           |
    |   ORACLE SHOW-INFO: Error  SQL-Cells  My-Tables  All-Tables    |

          Здесь вы увидите таблицы Sales1,использованную в уроке 1,Sales2 из
урока 2,таблицу Fall5 из урока 3 и,наконец,таблицу,которую вы будете использо-
вать в данном уроке - Quota.(Вы можете увидеть этот список при помощи команды
G/OSM Hили нажав клавишу G[Table]H.)
          Для возврата к ЭТ:
     > нажмите любую клавишу.

     GСоздание таблицы БД из ORACLE RDBMS из вашейHGЭТH
          После работы с ЭТй SQL*Calc вам нужно решить,поскольку созданная ва-
ми ЭТ содержит много новых важных данных,сохранять ли ее как таблицу в БД
ORACLE RDBMS.
          Создание таблицы БД требует сообщения SQL*Calc двух вещей:
     *  какие ячейки в вашей ЭТ содержат имена колонок,которые нужно использо-
        вать в таблице.
     *  какие ячейки ЭТ содержат информацию,которую нужно поместить в таблицу.
          Давайте сперва выведем на экран другой пример ЭТ:
     >  введите: G/FH
               G  RH
                 Gdemo4[Return]H
                 G[Return] Hдля получения всего файла
          Вот что вы получите:

     GРисунок 3-32H
    |         A     B         C       D      E      F     G    H     |
    |   1 >Ename  MGR    HIREDATE  SAL    COMM<->DEPTNO              |
    |   2 |====== ====== ========  ====== ======|========            |
    |   3 |SMITH  7902   17-DEC-8    $800       |      20            |
    |   4 |ALLEN  7698   20-FEB-8  $1,600   $300|      30            |
    |   5 |WARD   7698   22-FEB-8  $1,250   $500|      30            |
    |   6 |JONES  7839   02-APR-8  $2,975       |      20            |
    |   7 |MARTIN 7698   28-SEP-8  $1,250 $1,400|      30            |
    |   8 |BLAKE  7839   01-MAY-8  $2,850       |      30            |
    |   9 |CLARK  7839   09-JUN-8  $2,450       |      10            |
    |  10 |SCOTT  7566   09-DEC-8  $3,000       |      20            |
    |  11 |KING          17-NOV-8  $1,500       |      10            |
    |  12 |TURNER 7698   08-SEP-8  $1,500       |      30            |
    |  13 |ADAMS  7788   12-JAN-8  $1,100       |      20            |
    |  14 |JAMES  7698   03-DEC-8    $950       |      30            |
    |  15 |FORD   7566   03-DEC-8  $3,000       |      20            |
    |  16 |MILLER 7782   23-JAN-8  $1,300       |      10            |
    |  17 |                                     |                    |
    |  18 |______                               |                    |
    |  19        \                              |                    |
    |  20         \                             |                    |
    |  21          |                            |                    |
    |  2% USED  A1(Text)= ENAME                  -----               |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)        |                                  |              |
             текущая ячейка                  титулы колонок для новой
                                             таблицы

          Для начала создания новой таблицы,содержащей эту информа-
     цию,вам нужно использовать команду /Oracle Table.
     >  введите: G/OH  для команды Oracle
                 GTH   для создания таблицы - Table
          SQL*Calc уже готова стартовать для создания новой таблицы БД.Строка
приглашения спросит вас,что вы хотите для вызова новой таблицы:
     Enter name of ORACLE TABLE to be created (1-30 chars)
     (введите имя таблицы ORACLE,которую нужно создать (1-30 символов)
          Давайте предположим,что вы хотите назвать эту таблицу "Commissions":
     >  введите: GCommissions[Return]H
          GПримечание: Hесли кто-либо еще использует ваш компьютер и
     запустил это пособие,то вы можете увидеть сообщение:
     That ORACLE TABLE already exists.Remove existing table? No  Yes
     (эта таблица ORACLE уже существует.Удалить существующую таблицу?
     Да  Нет)
          Введите GY Hи вы будете иметь возможность продолжать создание
     вашей таблицы.
          Следующее приглашение попросит вас диапазон имен,которые
     вы хотите дать колонкам вашей новой таблицы:
     Enter range containing ORACLE COLUMN NAMES for the new TABLE
     (e.g.a1.d1)
          Посмотрите на вашу ЭТ.Имена колонок все в
     строке 1,в ячейках А - F: "ENAME" в А1 будет именем первой  ко-
     лонки таблицы и так далее.Давайте поместим их в нашу таблицу:
     >  введите: G a1.f1[Return] H(вы можете использовать указатели для
        ввода диапазона.)

         Следующее приглашение спросит вас информацию для ввода в эту таблицу:
     Enter range containing DATA for the new ORACLE TABLE (e.g.a2.d20)
          Вы обеспечите диапазон ячеек,содержащих данные для ввода в таблицу.В
данном случае вам нужно все со строки 3 по 16 колонок с А по F.(Например,нуж-
но,чтобы 7902 была первой записью в колонке по имени "MGR".) Вот как задавать
диапазон:
     >  введите: Ga3.f16[Return]H
          Теперь SQL*Calc отработает.Она создаст таблицу,которую вы хотите в
БД,отразив факт,что колонка А содержит текст,колонка D - числа и так далее.
          После установки колонок все записи вводятся в новую таблицу
     и вы увидите последнее сообщение:
          Table created and data inserted
          Затем произойдет возврат к основному приглашению.Теперь вы
     имеете новую таблицу по имени "Commissions" в БД.
          Давайте проверим,что таблица существует.Сперва очистим экран:
     >  нажмите      /GWEYH
     > в А1 введите: G$select * into a1.f16 from commissionsH
     > введите:     G [Return]H
          На экране появятся титулы и данные из вновь созданной таблицы,но без
деталей форматирования (таких как денежный формат для колонки выплат).Ваша но-
вая таблица действительно существует!
          Данные в ней теперь станут постоянной частью вашей БД.Это уникальное
свойство SQL*Calc - позволить вам создать таблицу прямо из ЭТ - значит,что
много пользователей не нуждется в других программах,кроме SQL*Calc,для исполь-
зования и поддержки вашей ORACLE RDBMS.
          Теперь мы готовы перейти к изучению другой части программы SQL*Calc.
     >  примените /Worksheet Erase для очистки экрана перед продолжением.

                   GПередача данных SQL в другую ячейкуH
          Помните таблицу квот,которую вы видели в каталоге имен таблиц? Мы
будем ее использовать в данном разделе.Но перед извлечением из нее данных вве-
дем титул ЭТ:
     > в А1 введите:
         GQuota vs.Actual Sales for Region:[Return]H
     > в E1 введите: GWESTH
          Строка 1 выглядит следующим образом:

     GРисунок 3-33H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: West                   |
    |   2                                     ^                      |
    |   3                                     |                      |
    |   4                                    /                       |
    |   5                                   /                        |
    |   6                                  /                         |
    |   7                                 /                          |
    |   8                                /                           |
    |   9                               /                            |
    |  10                              /                             |
    |  11                             /                              |
    |  12                            /                               |
    |  13                           /                                |
    |  14                          /                                 |
    |  15      ___________________/                                  |
    |  16     |                                                      |
    |  17     |                                                      |
    |  18     |                                                      |
    |  19     |                                                      |
    |  20     |                                                      |
    |  21     |                                                      |
    |  0% USED| E1 (Text)=West <---|                                 |
    |OVERFLOW: 30 ROWS.Insert Overwrite  Stop                       |
    |Insert enough rows to hold the overflow data                    |
              |                    |
        текущая ячейка       запись,используемая как критерий выбора

          Теперь напишите оператор SELECT в ячейке F1,который будет
     делать следующее:
        (1) обращаться к Е1 для выбора критерия
        (2) устанавливать цель ячейку А4,как верхний левый угол
            вводимых данных.
     >  в F1 введите: G$select * into &a4 from quota where region = &e1H
     > G HнажмитеG: [Return]H

          Диапазон INTO станет а4.а4,титулы колонок появятся и вы
     получите сообщение GOverflowH:
     OVERFLOW: 3 EXTRA ROWS.Insert  Overwrite  Stop
     >  поскольку это новая ЭТ,введите GОH для опции переписать - Overwrite.
          Появится следующая информация:

     GРисунок 3-34H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: West  **SQL**          |
    |   2                                      ________^             |
    |   3                                     /                      |
    |   4  SALESPER REGION   AMOUNT          /                       |
    |   5  Allen    West          150       /                        |
    |   6  Ward     West          150      /                         |
    |   7  Garcia   West          100     /                          |
    |   8                                /                           |
    |   9                               /                            |
    |  10                              /                             |
    |  11                             /                              |
    |  12                            /                               |
    |  13                           /                                |
    |  14                          /                                 |
    |  15      ___________________/                                  |
    |  16     |                                                      |
    |  17     |                                                      |
    |  18     |                                                      |
    |  19     |                                                      |
    |  20     |                                                      |
    |  21     |                                                      |
    |  1% USED| F1(SQL,A,A)=select * into &a4.c7 from quota where    |
    |           region = &e1  <----                                  |
    |Press HELP any time.(Begin SQL with $,formula with +,      |
    | command with /.)             |                                 |
              |                    |
        ячейка,содержащая   запись,использующая критерий выбора
        оператор SQL         из ячейки е1,находится в ячейке f1

          Отметим,что диапазон INTO расширен до а4.с7 и,что ячейка SQL отмече-
на в F1.Отметка  **SQL**  показывает,что вы ввели в эту ячейку оператор SQL.

                            GУровни форматированияH
          Как насчет изменения топологии ЭТ для более профессионального вида?
     >  введите: G/LH для команды Layout
                 GWH  для установки уровня топологии команды Worksheet
          Текущая установка для данного уровня появится в строке статуса и ст-
рока приглашения выведет доступные различные опции формата:
     LAYOUT: Width Style Align Money Int Bar General Decimal
     >  введите: GWH  для опции Width
                 G8H  для ширины колонки
                 G[Return]H для обозначения конца
          Все колонки теперь установлены шириной в 8 символов.Давай-
     те введем другие глобальные опции ЭТ:
     >  введите: G/LH  для команды Layout
                 GWH   для опций Worksheet level
                 GMH   для формата Money - деньги
          Теперь неважно,где вы будете вводить числа в ЭТ,они будут появляться
в денежном формате.Вы можете отменить эти установки для любой колонки,строки
или поля.Попытаемся сделать следующее:
     >  переместите текущую ячейку в колонку А.
     >  введите:  G/L  Hдля команды Layout
                  GCH   для форматирования уровня колонки
                  GWH   для параметра ширина
                  G12H  для ширины колонки
                  G[Return]H
          Теперь ширина колонки в 12 символов перекроет для колонки А ширину в
8 символов только для нее.Если вы удалите топологию колонки А при помощи опции
сброса - Reset,то колонка будет иметь ранее установленную ширину.
     >  далее введем титулы колонок как показано в следующем примере экрана.
        Как только вы добавите титулы,измените топологию для колонок С,D и F
        (но не колонки Е),чтобы выравнять справа текст для более приличного
        вида.

          Ваш экран будет следующим:

     GРисунок 3-35H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: West  **SQL**          |
    |   2                                      ________^             |
    |   3                     Quota   Actual  /                      |
    |   4  SALESPER REGION   AMOUNT   Amount Variance  %Var          |
    |   5  Allen    West     150.00         /                        |
    |   6  Ward     West     150.00        /          xxxxxx         |
    |   7  Garcia   West     100.00       /              ^           |
    |   8                       ^        /               |           |
    |   9                       |       /                |           |
    |  10                       |      /                 |           |
    |  11                       |     /                  |           |
    |  12                       |    /                   |           |
    |  13                       |   /                    |           |
    |  14                       |  /                     |           |
    |  15      _________________|_/                      |           |
    |  16     |                 |                        |           |
    |  17     |                 |                        |           |
    |  18     |                 |                        |           |
    |  19     |                 |                        |           |
    |  20     |                 |                        |           |
    |  21     |                 |                        |           |
    |  1% USED| F1(SQL,A,A)=select * into &a4.c7 from quota where    |
    |         | region = &e1    |                        |           |
    |Press HELP any time.(Begin|SQL with $,formula with|+,      |
    | command with /.)          |                        |           |
              |                 |                        |
       ячейка SQL        денежный формат                 |
                                              текущая ячейка (f6)

                        GСлияние двух таблиц в ЭТH
          Теперь вы можете узнать что-то новое.В ORACLE RDBMS вы можете слить
2 или более таблиц в одну,когда пишете оператор SELECT.(Смотри книги SQL Pri-
mer или Introduction to ORACLE и Overview of SQL.) Но пока вы в ЭТ,вы можете
выбрать другой способ.
          Вы можете написать оператор SQL SELECT,который ссылается
     на данные,уже извлеченные,как критерии для нового выбора:
     > в D5 введите:G $select sum(amount) from fall5 where salesperson = &a5H
          Этот оператор говорит "просуммировать все суммы для продавца в а5,
Allen,и (поскольку нет диапазона INTO) поместить в эту ячейку."
          Сумма продаж для Allen станет на место.
     >  /GCH
        Gd5[Return]H
        Gd6.d7[Return]H

          Как только SQL*Calc скопирует оператор SELECT,она изменит
     ссылки на ячейки,но не выполнит его.Вместо этого в каждой
     ячейке появится G"*Copied*"H.Для выполнения этих операторов:
     > нажмите G[*Copied*] H(на IBM PC это [F10])
          Когда SQL*Calc автоматически выполнит каждый оператор,поя-
     вится сумма:

     GРисунок 3-36H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: West  **SQL**          |
    |   2                                                            |
    |   3                     Quota   Actual                         |
    |   4  SALESPER REGION   AMOUNT   Amount Variance  %Var          |
    |   5  Allen    West     150.00   140.00                         |
    |   6  Ward     West     150.00   130.00 <------------------     |
    |   7  Garcia   West     100.00    90.00                    |    |
    |   8                                ^                      |    |
    |   9                                 \                     |    |
    |  10                                  \                    |    |
    |  11                                   \                   |    |
    |  12                                    |                  |    |
    |  13                                    |                  |    |
    |  14                                    |                  |    |
    |  15                                    |                  |    |
    |  16                                    |                  |    |
    |  17                                    |                  |    |
    |  18                                    |                  |    |
    |  19                                    |                  |    |
    |  20                                    |                  |    |
    |  21                                    |                  |    |
    |  2% USED D6(SQL,A,A)=select sum(amount)|into d6.d6 from fall5  |
    |          where  salesper               |                  |
    |Press HELP any time.^(Begin SQL with $,formula with +, |    |
    | command with /.)   |                   |                  |    |
                         |      значения из скопированного      |
                         |      оператора SQL SELECT         текущая
                         |                                   ячейка
                    оператор SQL
                    SELECT

          В результате вы слили две таблицы из ORACLE RDBMS!

                           GВычисление переменныхH
          Для вычисления переменных сперва введите разность между
     суммой квоты и действительной суммы:
     > в Е5 введите:G +d5-c5[Return]H
     >               G/CH
                     Ge5[Return]H
                     Ge6.e7[Return]H
          Затем введем формулу для вычиления процентов каждого про-
     давца,отличных от его или ее квоты:
     > в F5 введите: G+e5/c5*100[Return]H
               G      /CH
                     Gf5[Return]H
                     Gf6.f7[Return]H
          Ваш экран теперь будет содержать следующее:

     GРисунок 3-37H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: West  **SQL**          |
    |   2                                                            |
    |   3                     Quota   Actual                         |
    |   4  SALESPER REGION   AMOUNT   Amount Variance  %Var          |
    |   5  Allen    West     150.00   140.00   -10.00  -6.67 <--     |
    |   6  Ward     West     150.00   130.00   -20.00 -13.33    |    |
    |   7  Garcia   West     100.00    90.00   -10.00 -10.00    |    |
    |   8                                       ^        ^      |    |
    |   9                                      /         |      |    |
    |  10                                     /          |      |    |
    |  11                                    |           |      |    |
    |  12                                    |           |      |    |
    |  13                                    |           |      |    |
    |  14                                    |           |      |    |
    |  15                                    |           |      |    |
    |  16                                    |           |      |    |
    |  17                                    |           |      |    |
    |  18                                    |           |      |    |
    |  19                                    |           |      |    |
    |  20                                    |           |      |    |
    |  21                                    |           |      |    |
    |  2% USED  F5(Formula)=e5/c5*100        |           |      |    |
    |Press HELP any time.^(Begin SQL with $,formula with|+, |    |
    | command with /.)   |                   |           |      |    |
                         |         переменные,вычисленные|      |
                         |       по скопированной формуле|   текущая
                         |                               |   ячейка
                    формула в f5                         |
                                                   проценты,вычислен-
                                                   ные по формуле

                          GДобавление общей чертыH
          Для вычисления общей суммы по западному региону добавим общую черту:
     >  в ячейке С8 введите:  [\][-]
     >         /GCH
               Gc8[Return]H
               Gd8.f8[Return]H
     >  в В9 введите:GTotals:[Return]H
          Убедитесь,что формула ВКЛЮЧАЕТ строки повторяющегося текста:
     >  в С9 введите:  G+sum(c5c8)[Return]H
     >  cкопируйте эту формулу в ячейки D8 и Е9.
     >  скопируйте формулу в F7 в ячейку F9 для получения процента
        изменений для западного региона в общем.
          Теперь вы увидите:

     GРисунок 3-38H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: West  **SQL**          |
    |   2                                                            |
    |   3                     Quota   Actual                         |
    |   4  SALESPER REGION   AMOUNT   Amount Variance  %Var          |
    |   5  Allen    West     150.00   140.00   -10.00  -6.67         |
    |   6  Ward     West     150.00   130.00   -20.00 -13.33         |
    |   7  Garcia   West     100.00    90.00   -10.00 -10.00         |
    |   8                  --------  -------  ------- ------         |
    |   9           Totals   400.00   360.00   -40.00 -10.00         |
    |  10                                       ^        ^           |
    |  11                                      /         |           |
    |  12                                     /          |           |
    |  13                                    |           |           |
    |  14                                    |           |           |
    |  15                                    |           |           |
    |  16                                    |           |           |
    |  17                                    |           |           |
    |  18                                    |           |           |
    |  19                                    |           |           |
    |  20                                    |           |           |
    |  21                                    |           |           |
    |  2% USED  E9(Formula)=sum(e5.e8)       |           |           |
    |Press HELP any time.(Begin SQL with $,formula with|+,      |
    | command with /.)                       |           |           |
                                     текущая ячейка      |
                                                    характеристика
                                                    всего региона

          Запад на $40 меньше квоты,что составляет 10 процентов.

                  GИзмения критерия выбора и перевычислениеH
          Теперь давайте посмотрим на восток:
     >  в Е1 изменить West на GEast.H
          Просто изменив эту запись вы не получите соответствующих сдвигов в
данных,которые вы хотите от ORACLE RDBMS.Вы должны повторить порядок в котором
вы входили в ячейки SQL; вам нужно перевычислить ячейки SQL.В уроке 3 вы виде-
ли как первычислить оператор SQL при помощи [GEditH]G Hи [GReturnH].Но в
данном случае у вас имеется серия ячеек SQL,так что вот более простой путь:
     >  введите: /GO Hдля команды /Oracle
          Появится следующее приглашение:
     ORACLE: Execute show-Info Logon Commit Rollback Options Table
     >  введите: GE HилиG [Return]H для команды Execute
          Появится следующее приглашение:
     Enter range of SQL-cells to EXECUTE ([Return] for all)
     (введите диапазон SQL-ячеек для исполнения ([Return] для всех))
     >  нажмите G[Return]H для выполнения всех операторов SELECT в ЭТ.
          Теперь вы видите последовательность этой команды.Вы можете сэкономи-
ть время нажав клавишу [GQueryH] для выполнения всей команды в одной команд-
ной строке (вместо G/OES[Return]H).Помните,что вы должны использовать клави-
шу только при переисполнении ВСЕХ операторов SELECT в вашей ЭТ; она не влияте
на другие виды ячеек SQL.
          Когда SQL*Calc пытается выполнить первый оператор SQL в F1,
     она определит условие преполнения:
     OVERFLOW: 1 EXTRA ROW.Insert  Overwrite  Stop
     >  нажмите клавишуG IH или G[Return]H для команды Insert.
          Появится следующее сообщение:
     Worksheet INSERT: Copy formulas and SQL stmts from preceding row?
      Yeas  No
     (ввести в ЭТ: копировать формулы и SQL stmts из
     предыдущей строки? Да  Нет)
          Вы ХОТИТЕ копировать из предыдущей строки для введения
     ячейки SQL в колонку D и формулы отличия для новой строки.
     >  введите: G[Return]H или G YH  для ДА

          SQL*Calc введет дополнительную строку копируя формулу из строки над
ней и затем продолжит выполнение каждой ячейки SQL в колонке D.
          Теперь вы увидите:

     GРисунок 3-39H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: East  **SQL**          |
    |   2                                     ^--------------        |
    |   3                     Quota   Actual                 |       |
    |   4  SALESPER REGION   AMOUNT   Amount Variance  %Var  |       |
    |   5  Schmidt  East     100.00    60.00   -40.00 -40.00 |       |
    |   6  Wong     East     150.00   100.00   -50.00 -33.33 |       |
    |   7  Martin   East     150.00    90.00   -60.00 -40.00 |       |
    |   8  Clark    East     100.00    90.00 < -10.00 -10.00 |       |
    |   9                  -------- -------- -------- ------ |       |
    |  10           Totals:  500.00   340.00 |-160.00 -32.00 |       |
    |  11                                    |              /        |
    |  12                                    |             /         |
    |  13                                    |            /          |
    |  14                                    |           |           |
    |  15                                    |           |           |
    |  16                                    |           |           |
    |  17                                    |           |           |
    |  18                                    |           |           |
    |  19                                    |           |           |
    |  20                                    |           |           |
    |  21                                    |           |           |
    |  4% USED D8(SQL)=select sum(amount) into d8.d8 from fall5      |
    |                  where salester                                |
    |Press HELP any time.(Begin SQL with $,formula with|+,      |
    | command with /.)                       |           |           |
                                     текущая ячейка      |
                                                    измененный
                                                    критерий

          Прродажи упали даже больше на востоке - вам нужно проверить все это!
          Как только вы получили ЭТ,вы можете использовать ее снова и снова.
Только изменяйте параметры и заново выполняйте операторы SELECT для извлечения
различных данных - комбинируйте ваши знания из ЭТ с вашими размышлениями для
достижения поставленной цели.

      GУстановка автоматических опций переполнения и недокомплектаH
        Когда вы повторно извлекаете данные из ORACLE RDBMS в одну и ту же ЭТ,
м.б. полезно установить автоматически опции Overflow и Underflow.SQL*Calc за-
тем может их выполнить при выполнении оператора SELECT без приглашения всякий
раз их устанавливать при встрече большего или меньшего объема данных.
          Для этой ЭТ сделать можно следующее:
     >  введите: /GОH
          Появится следующее приглашение:
     ORACLE: Execute Show-Info logon Commit Rollback Options Table
     >  введите: GO Hдля опций
          Строка приглашения изменится:
     ORACLE OPTIONS: Overflow  Underflow
     >  введите: G[Return] Hили GOH  для переполнения
     Затем появится:
     Enter range of SQL-cells to set OVERFLOW OPTIONS for ([Return]
     for current cell)
     (введите диапазон SQL-ячеек  для  установки  опций  переполнения
     ([Return] для текущей ячейки))
     >  введите: Ga5.d8 Hи затем G [Return]H
          Читаем:
     ORACLE OPTIONS FOR OVERFLOW: Insert  Overwrite  Stop  Ask
     >  введите: G[Return] HилиG IH для автоматической установки Insert
          Читаем далее:
     ORACLE OPTIONS FOR OVERFLOW: Copy formulas & SQL stmts? Yes No Ask
     (ORACLE OPTIONS FOR OVERFLOW: копировать формулы и SQL stmts? Да
     Нет  Вопрос)
     >  введите: G[Return]H или GIH для установки автоматического копирова-
        ния.
          Строка статуса теперь выводит "Oracle operation performed".
     >  введите: G[Return]H,чтобы увидеть содержимое ячейки.

          Последовательность команд выполнена и установка появится в
     строке статуса.

     GРисунок 3-40H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: East  **SQL**          |
    |   2                                                            |
    |   3                     Quota   Actual                         |
    |   4  SALESPER REGION   AMOUNT   Amount Variance  %Var          |
    |   5  Schmidt  East     100.00    60.00   -40.00 -40.00         |
    |   6  Wong     East     150.00   100.00   -50.00 -33.33         |
    |   7  Martin   East     150.00    90.00   -60.00 -40.00         |
    |   8  Clark    East     100.00    90.00 < -10.00 -10.00         |
    |   9                  -------- -------- -------- ------         |
    |  10           Totals:  500.00   340.00 |-160.00 -32.00         |
    |  11                                    |                       |
    |  12                                    |                       |
    |  13                                    |                       |
    |  14                                    |                       |
    |  15                                    |                       |
    |  16                                    |                       |
    |  17                                    |                       |
    |  18                                    |                       |
    |  19                                    |                       |
    |  20                                    |                       |
    |  21              v-----|               |                       |
    |  4% USED D8(SQL,IY,A)=select sum(amount)into &d8.d8 from fall5 |
    |Press HELP any time.(Begin SQL with $,formula with +,      |
    | command with /.)       |               |                       |
                    автоматическая установка |
                    переполнения             |
                                       текущая ячейка

          Вы можете всегда знать ваши установки для данной ячейки SQL.Буквы
"I" и "Y",выведенные здесь относятся к вашей установке переполнения.Буква "A"
сообщает,что вы не сделали установки по недокомплекту и программа в тех случа-
ях будет вас спрашивать.
          Если вы хотите,можете продолжить и установить автоматичес-
     кую установку недокомплекта сами.
          Если вы сделали эту установку,то строка статуса будет следующей:

     GРисунок 3-41H
    |         A       B         C        D      E     F     G     H  |
    |   1  Quota vs.Actual Sales for Region: East  **SQL**          |
    |   2                                                            |
    |   3                     Quota   Actual                         |
    |   4  SALESPER REGION   AMOUNT   Amount Variance  %Var          |
    |   5  Schmidt  East     100.00    60.00   -40.00 -40.00         |
    |   6  Wong     East     150.00   100.00   -50.00 -33.33         |
    |   7  Martin   East     150.00    90.00   -60.00 -40.00         |
    |   8  Clark    East     100.00    90.00 < -10.00 -10.00         |
    |   9                  -------- -------- -------- ------         |
    |  10           Totals:  500.00   340.00 |-160.00 -32.00         |
    |  11                                    |                       |
    |  12                                    |                       |
    |  13                                    |                       |
    |  14                                    |                       |
    |  15                                    |                       |
    |  16                                    |                       |
    |  17                                    |                       |
    |  18                                    |                       |
    |  19                                    |                       |
    |  20                                    |                       |
    |  21                v---|               |                       |
    |  4% USED D8(SQL,IY,D)=select sum(amount)into &d8.d8 from fall5 |
    |Press HELP any time.(Begin SQL with $,formula with +,      |
    | command with /.)       |               |                       |
                    автоматическая установка |
                    недокомплекта            |
                                       текущая ячейка

                                  GОбзорH
          Вы готовы начинать применять SQL*Calc для собственных проектов!
          В данном уроке вы узнали как использовать некоторые более
     расширенные возможности SQL*Calc:
 *  перeчислили таблицы ORACLE RDBMS при помощи команды Show-Info:
               /GО  Hдля команды /Oracle
               GSH   для команды Show-Info - информации ORACLE RDBMS
               GMH   для листинга My-Tables - мои-таблицы
        Вы узнали,также,что можно использовать G[Table]H для выполне-
        ния этой команды.
 *  создавали таблицу ORACLE RDBMS при помощи команды /Oracle Table.
 *  посылали выбранные данные в ячейку,кроме ячейки SQL путем задания верхнего
    левого угла блока данных.Например,в F1 вы вводите: G $select * into &a4
    from quotaH
 *  опровергать установки низкого уровня установками на более высоком уровне.
    Например,переместите курсор в колонку А и введите:
               G/LH  для команды Layout
               GCH   для уровня форматирования колонка
               GWH   для параметра ширина
               G12[Return]H  для ширины колонки
        Эти действия перекрывают команду уровня ЭТ и м.б. аннулированы при по-
        мощи следующих действий:
               G/LH  для команды Layout
               GCH   для уровня форматирования колонка
               GRH   для сброса - Reset - в опцию по умолчанию
 *  соединяли 2 таблицы в ЭТ используя ссылки на ячейки при помощи следующих
    шагов:
         *  извлечь данные из таблицы 1 при помощи оператора SELECT
         *  написать второй оператор SELECT,ссылающийся на объект выведенный
            из таблицы 1 для извлечения объекта из таблицы 2.
         *  скопировать - /Сору - второй оператор в колонку ниже,
             создав последовательность ячеек SQL.
         *  нажать G[*Copied*] Hдля выполнения всех скопированных
             ячеек SQL и вывода на экран их значений.
 *  изменяли критерий выбора и затем переисполняли серии ячеек SQL
    содержащих операторы SQL.Например:
               /GOH  для команды /Oracle
               GEH   для выполнения ячейки SQL
               GSH   только для оператора SELECT
               G[Return]H для всех операторов SELECT в электронной таб-
                        лице
    Вы узнали также как использовать G[Query]H для выполнения этой команды.
        Когда вы получили условие переполнения вы выбрали опцию
        Insert и ответили Y - Да на копирование оператора SQL и формул
        разниц из предыдущей строки.
 *  создали автоматические установки для переполнения и недокомплекта,так что
    вас не будут приглашать принимать решение всякий раз при их возникновении.

                                    GРезюмеH
         В 4 уроках вы рассмотрели основные возможности SQL*Calc,комбинирующие
преимущества изощренной БД и мощной ЭТ.
          После этих уроков вы можете найти ответы на любые вопросы при помощи
экранов Help,представляемых при нажатии клавиши [GHelpH] в любой точке,где
нужно принимать решения.Вы найдете больше деталей о выполнении записей и при-
менении команд - и их действии - далее в этом пособии.Они составляют раздел
ссылок для вас - пользователей SQL*Calc.Прработайте эти материалы прежде чем
начать работу,это поможет вам избежать многих вопросов.
          Вы уже готовы к применению SQL*Calc для повседневной работы!

 +   GЧАСТЬ  3:             ССЫЛКИH
       GГлава 4     Присвоение клавиш и одноклавишные командыH
          Нотация клавиатуры,используемая в этом пособии,не всегда совпадает с
маркировкой клавиш на вашем компьютере.Ниже вы увидите эквиваленты для клавиа-
туры IBM PC.Для других клавиатур обратитесь к Installation and User's Guide
или к Release Notes для вашей системы.Следующие присвоения клавиш являются
описаниями того,что каждая клавиша делает.(Следующая информация относится ко
всем типам клавиатуры.)

                       GПрисвоения клавиш для IBM PCH
     G[Return]H     - клавиша,маркируемая так:  <--
                                                  |
     G[Backspace]H  - клавиша,маркируемая так:  <--
     G[Shift]H      - клавиша,маркируемая так:   ^
                                                |
                  Другие клавиши:
     GКлавиши  IBM PC      НотацияH
     G[Esc]                [Escape]H
     G[Home]               [Home]H
     G[End]                [End]H
     G[PgUp]               [PageUp]H
     G[PgDn]               [PageDoun]H
     G[Ins]                [Insert]H
     G[Del]                [Delete]H
          Клавиши,перемещающие курсор,и изменяющие ячейку,работают
     на клавиатуре стрелок и цифр:
     -->  правая стрелка
     <--  левая стрелка
      ^
      |   стрелка вверх

      |
      v   стрелка вниз
          (Если при нажатии клавиш-стрелок на экране появляются цифры,то наж-
мите клавишу [GNumLockH] для перевода их в режим стрелок.)
          Некоторые другие команды и функции присвоены функциональным клавишам
в SQL*Calc.Здесь приведен список функциональных клавиш для IBM PC.

     GКлавиша      ФункцияH
     F1           G[Help]H
     F2           G[Edit]H
     F3           G[Name]H
     F4           G[Abs]H -- не поддерживается в SQL*Calc V.2
     F5           G[Goto]H
     F6           G[Window]H
     F7           G[Query]H
     F8           G[Table]H
     F9           G[Calc]H
     F10          G[*Copied*]H
          Некоторые другие клавиши также имеют специальное значение:

     GКлавиша      ФункцияH
     Ctrl-Z       [GExitH]
     Ctrl-D       дублирует правую стрелку
     Ctrl-S       дублирует левую стрелку
     Ctrl-E       дублирует стрелку вверх
     Ctrl-X       дублирует стрелку вниз

                           GОдноклавишные командыH
         В  данном разделе описываются функциональные клавиши,сгруп-
     пированные следующим образом:
     Подсказка                           G[Help]H
     Управление,завершение              G[Escape]H
     Команды листинга                    G[Name]H
                                         G[Table]H
     Просмотр окон                       G[Window]H
                                         GPageUp]H
                                         GPageDown]H
     Размещение данных                   <--,-->,^,|
                                                   |   v
                                         G[GoTo]H
                                         G[Home]H
                                         G[End]H
                                         G[Window]H
                                         G[PageUp]H
                                         G[PageDown]H
     Редактирование                      G[Edit]H
                                         <--,-->,^,|
                                                   |   v
                                         G[Insert]H
                                         G[Delete]H
                                         G[Home]H
                                         G[End]H
                                         G[Backspace]H
     Операции                            G[Calc]H
                                         G[Query]H
                                         G[Edit][Return]H
                                         G[*Copied*]H
                                         G[Exit]H

          Дополнительно к специально присвоенным клавишам при работе SQL*Calc
применяются другие последовательности клавиш (одни и те же для всех клавиатур):
     [/]       начинает команды SLASH
     [$]       начинает операторы SQL
     [.]       показывает диапазон (например,а14.с24)
     [,]       показывает откуда копировать данные
     [&]       означает содержимое ячейки в операторе SQL
     [+]       представляет формулу
     [']       представляет текст
     [\]       приводит к повтору символа
     [*]       означает,что все колонки таблицы ORACLE RDBMS будут
               извлечены при помощи оператора SQL SELECT.

                                 GПодсказкаH
 [Help]        после завершения обучения и во время работы с SQL*Calc всегда
               можно нажать G[Help]H для получения помощи.Каждый экран подс-
               казки привязан к вашему выбору.Вы не должны обращаться к посо-
               бию для справки о разных опциях; нажав эту клавишу вы получите
               необходимую информацию на экране.

                                 GУправлениеH
     [Escape]  эта клавиша - эквивалент "Cancel" в некоторых программах - поз-
               воляет вам отменить запись или команду перед нажатием [Return].
               Применяйте эту клавишу,когда вы поняли,что сделали ошибку и хо-
               тите запустить операцию заново.[Escape] имеет и другие специа-
               льные свойства,объясняемые на экране при его вызове.

                       GКоманды создания листинговH
     [Name]    нажав эту клавишу получите экран списка файлов ЭТ (*.CAL),имею-
               щихся на вашем компьютере в данное время - полезная информация
               при извлечении файлов.Одно любое нажатие возвратит вас в исход-
               ное место программы.
     [Table]   нажав эту клавишу получите список всех таблиц,принадлежащих вам
               в БД ORACLE RDBMS.Это эквивалентно команде /Oracle Show-Info
               My-Tables.

                          GКоманды просмотра оконH
     [PageUp]  при нажатии этой клавиши во время просмотра сегмента вашей ЭТ
               окно будет смещаться,чтобы показать предыдущее окно строк.Если
               вы находитесь в начале ЭТ (строка 1),то SQL*Calc проигнорирует
               нажатие.
   [PageDown]  также как выше при нажатии этой клавиши вид перемещается вниз к
               следующему окну строк.Если вы уже дошли до конца ЭТ (строка
               8192),то SQL*Calc проигнорирует нажатие.
     [Window]  если вы нажали эту клавишу при выведенном основном приглашении,
               то SQL*Calc переключит текущую ячейку в другое окно.(Режим дво-
               йного окна описан в главе Ввод команд SLASH в описании команды
               /Worksheet Window.) Если двойное окно не активно,то эта клавиша
               игнорируется.

                  GКоманды,влияющие на размещение данныхH
          Каждая из этих команд смещает положение текущей ячейки -
     место,куда идет ваш текущий ввод  в ЭТ.

 Клавиши-стрелки    нажимая [-->],[<--],[^] или [|] мы перемещаем
                                         |       v
               текущую ячейку (выделенную по яркости на экране) направо,налево,
               вверх или вниз на одну колонку или строку в одно нажатие.При
               нажатии и удержании стрелки текущая ячейка будет перемещаться в
               данном направлении пока вы не освободите клавишу.Используйте
               возможность "напечатать вперед" (активизируемую путем изменения
               опции курсора ячейки команды /Worksheet Options) если вы хотите
               быть уверены в том,что курсор ячейки переместится на заданное
               число мест.Эта возможность полезна при медленной работе терми-
               нала по перевыводу экрана (из-за небольшой скорости передачи
               данных или занятости компьютера другими пользователями.) Для
               дальнейших подробностей обратитесь к разделу Команда /Worksheet
               Options в главе Ввод команд SLASH.
     [GoTo]    если вы нажмете эту клавишу,когда выведено основное приглашение,
               SQL*Calc изменит его на:
               GOTO:  Enter cell coodinate or name
               (GOTO:  введите координаты или имя ячейки)
               Ответьте путем ввода координат типа а26 или имени ячейки,кото-
               рую вы поименовали при помощи команды /Range Name,например,TO-
               TALS и нажмитеG [Return]H.SQL*Calc переместит текущую ячейку
               в эту позицию.(Она переместит текущую ячейку в левый верхний
               угол диапазона,если вы его задали.) Если координаты вне экрана,
               то окно сдвинется так,что новая текущая ячейка будет в верхнем
               левом углу.) Вам нельзя использовать клавишу [GoTo] для переме-
               щения в область заблокированного титула.Сперва нужно его разб-
               локировать как описано в пособии в разделе Команда /Worksheet
               Title в главе Ввод команд Slash.)
     [Home]    нажав эту клавишу мы переместим текущую ячейку в А1.Если вы за-
               блокировали строки или колонки при помощи /Worksheet Title,то
               эта клавиша не переместит ячейку в А1,а в первую ячейку после
               заблокированной области.Для перемещения в заблокированную обла-
               сть,ее нужно разблокировать.(Смотри раздел Команда /Worksheet
               Title в главе Ввод команд Slash.)
     [End]     при нажатии этой клавиши текущая ячейка перемещается в послед-
               нюю ячейку на пересечении старших используемых строки и колон-
               ки.(Не обязательно будет перемещение к последней возможной яче-
               йке - IV8192.)
               Примечание: эти 2 клавиши применяются для определения диапазона
                          и полезны,когда вы хотите удостовериться,что ваша
                          команда воздействовала на все записи в текущей ЭТ.
     [Window]  если вы нажмете эту клавишу при выведенном основном приглаше-
               нии,и активен режим двойного окна,то SQL*Calc переключит теку-
               щую ячейку в другое окно.(Этот режим описан в разделе /Workshe-
               et Window в главе Ввод команд Slash.) Если режим двойного окна
               не активен,то эта клавиша игнорируется.
     [PageUp],при работе с большой ЭТй вы часто бу-
     [PageDown] дете применять эти клавиши для перемещения в предыду-
                 щий или следующий экраны информации.

                       GКоманды редактированияH
     [Edit]    эту клавишу применяют для начала процесса внесения изменений в
               числа,текст,формулы ли операторы SQL,которые вы вводили в ЭТ,
               также как данные,которые вы извлекли из ORACLE RDBMS.перейдите
               к ячейке,содержащей нужный вам материал для изменения и нажмите
               эту клавишу.Она помещает исходные данные,которые вы вводите или
               данные,извлеченные из ORACLE RDBMS обратно в строку ввода,так
               что вы можете делать изменения без перепечатывания всей строки.
               Появляется следующее приглашение:
               EDIT: Use arrow keys,HOME,END,INSERT and DELETE.
               Press [Return] when done.
               (Редактирование: используйте клавиши-стрелки,HOME,END,INSERT и
               DELETE.Нажмите [Return] когда закончите.) Курсор появится в ко-
               нце строки.(если текущая ячейка пуста,то SQL*Calc подаст звуко-
               вой сигнал,чтобы сообщить,что вы не можете редактировать ячейку
               без данных.)
     Клавиши-  во время редактирования клавиши-стрелки не обладают их
     стрелки   обычными функциями перемещения курора текущей ячейки.
               Вместо этого стрелки вправо и влево перемещают курсор
               по строке ввода в соответствующую сторону.
     [Home]    можно нажать эту клавишу для перемещения курсора в на-
               чало строки,которую  вы редактируете.
     [End]     нажав эту клавишу мы перемещаем курсор в конец строки.
     [Insert]  нажав эту клавишу вы можете включить или выключить автоматичес-
               кое введение символов (ON или OFF).Первоначально она включена -
               установлена в ON,так что когда вы вводите символ,он автоматиче-
               ски вводится слева от положения курсора.Нажмите клавишу
               [GInsertH] для выключения этой опции.Теперь любой печатаемый
               символ будет заменять символ под курсором.
     [Delete]  нажав эту клавишу вы удалите символ  под курсором.
     [Backspace]  используя эту клавишу вы удаляете символ слева от курсора.
               Для полного обсуждения редактирования смотри главу
               Ввод данных в ЭТ.

                GКоманды,воздействующие на операции SQL*CalcH
     [Calc]    если вы нажмете эту клавишу при выведенном основном приглашении,
               то SQL*Calc автоматически перевычислит каждую формулу ЭТ и соо-
               тветственно восстановит экран.Несмотря на то,что вы отмените
               установку перевычисления при помощи команды /Worksheet Options
               (смотри главу Введение команд Slash),SQL*Calc перевычислит все
               формулы при изменении вами чисел,текста,формул или операторов
               SQL в ЭТ.Вы будете использовать эту клавишу когда измените ус-
               тановку на "Ручное перевычисление".Теперь при изменении содер-
               жимого ячейки путем ввода новых данных или редактирования фор-
               мулы или оператора SQL после нажатия клавиши [Edit] только дан-
               ная ячейка перевычисляется.Изменение на ручное перевычисление
               означает,что вы бу дете перевычислять всю ЭТ при нажатии этой
               клавиши [Calc].Вам понадобится нажимать эту клавишу несколько
               раз до того как все значения ЭТ станут верны,особенно если вы
               сделали несколько изменений ЭТ при помощи формул.Причина этого
               заключена в способе вычисления ЭТ.(смотри раздел Команда /Work-
               sheet Options в главе Ввод команд Slash.)
               Порядок перевычисления м.б. строка за строкой или колонка за
               колонкой в зависимости от установки /Worksheet Options.
     [Query]   нажатие этой клавиши эквивалентно выполнению команды /Oracle
               Execute Select и означает всю ЭТ при нажатии [Return].Также как
               [Calc] перевычисляет все формулы,эта команда берет все данные,
               измененные операторами SQL SELECT на текущий момент,на основе
               текущих данных в таблицах ORACLE RDBMS или в ячейках ЭТ,на ко-
               торые ссылаются операторы SQL.(Смотри раздел /Oracle Execute
               Select в главе Ввод команд Slash.) Отметим,что вы не можете ис-
               пользовать эту клавишу для переисполнения операторов SQL,кроме
               операторов SQL SELECT.
     [Edit]    когда вы переместили текущую ячейку в ячейку SQL и нажмете эту
               клавишу с последующим нажатием G [Return]H,SQL*Calc перевычи-
               слит оператор SQL в данной ячейке.При помощи этой комбинации
               клавиш вы можете переисполнить любой тип оператора SQL (SELECT,
               UPDATE,INSERT,DELETE,LOCK и так далее.)
   [*Copied*]  когда вы копируете - /Copy - ячейку SQL в другую ячейку или в
               диапазон ячеек,SQL*Calc не вводит вычисленные значения в эти
               ячейки.Вместо этого вы увидите нотацию *Copied* в каждой ячей-
               ке.Как только SQL*Calc завершит первый процесс копирования,вы
               должны нажать клавишу [*Copied*] и каждая скопированная ячейка
               будет вычислена.Нажатие этой клавиши эквивалентно использованию
               команды /Oracle Execute Copied и значает всю ЭТ при нажатии
               G[Return]H.(смотри раздел Команда /Oracle Execute Copied в
               главе Ввод команд Slash.)
     [Exit]    нажав эту клавишу вы быстро выходите из SQL*Calc и возвращаете-
               сь в OC.При этом вы должны подтвердить свое желание выхода.Пом-
               ните,что использование этой клавиши не сохраняет текущей ЭТ пе-
               ред выходом.Примените команду /File Save для сохранения вашей
               ЭТ.(Эта клавиша эквивалентна клавише /Quit.)

+    GГлава 5                Ввод данных в ЭТH
                                GСодержаниеH
          Вы можете использовать SQL*Calc как любую программу ЭТ: решать,когда
данные будут вводить в ЭТе,вводить данные из клавиатуры и устанавливать форму-
лы для вычисления новых значений.Но вы можете,конечно,использовать особое сво-
йство SQL*Calc входить в таблицы ORACLE RDBMS и вводить в ЭТ информацию,уже
введенную в БД,сохраняя тем самым время и исключая ошибки.
          Эта глава состоит из следующих частей:
 *  помещение данных: перемещение по ЭТ  Здесь вы найдете информацию об иден-
    тификации ячеек и диапазонов ячеек и перемещении текущей ячейки в ЭТ,по-
    мещая записи,которые вам нужны.
 *  автономные записи данных
          Этот раздел показывает различные виды записей,которые вы можете сде-
    лать прямо из клавиатуры вашего компьютера: текст,числа и формулы.
 *  редактирование записей данных
          используя клавиши [Edit] вы можете изменить содержимое ячеек.
 *  ввод данных из ORACLE RDBMS
          Здесь суммируются процедуры,которые вы должны пройти для установки
    операторов SQL,помещения их в ячейки SQL и выполнения операторов.(Вы може-
    те использовать приемы,описанные в разделе Редактирование записей,для из-
    менения этих записей.)

                  GРазмещение данных: Перемещение по ЭТH
          Вам необходимо решить,куда поместить каждую запись в ЭТ.Записи можно
размещать 3 способами:
 *  переместив текущую ячейку в то место ЭТ,куда нужно поместить запись.
 *  использовав команду Copy для задания,куда вы хотите скопировать данные.
 *  введя клаузу INTO в операторы SQL SELECT,которые вы написали.
 В любом случае вы задаете координаты ячейки,в которую нужно поместить данные.

                           GКоординаты ячейкиH
          Координаты ячейки - это ее адрес.Вы вводите координаты ячейки путем
обозначения пересечения колонки и строки.Например: А1 или BD127.Координаты
ячейки используются для идентификации диапазонов ячеек в командах типа GOTO
или /Copy,а также как ссылки на ячейки.

                            GСсылки на ячейкиH
    Ссылка на ячейку - это адрес ячейки,используемый в формуле или ячейке SQL.
Эта ссылка сообщает SQL*Calc,что нужно ввести в формулу или оператор SQL зна-
чение ячейки по данным координатам.
          Когда вы используете ссылку в качестве терма в формуле или операторе
SQL,SQL*Calc подставляет значение в этой ячейке в терм,обеспечивая вычисление
или выполнение оператора SQL и выводит результат на экран.Например,если вы
ввели формулу +SUM(b15.b30) в С36,то вы увидите число,представляющее сумму
значений ячеек в колонке В,строки 15-36.
          Ссылки на ячейки изменяются при копировании формул или операторов
SQL в разные места ЭТ.Несмотря на изменение /Worksheet Options,только ссылки,
написанные маленькими буквами будут изменены при копировании операторов SQL.
Ссылки,введенные большими буквами,остаются неизмененными.
          Когда вы используете ссылку на ячейку как часть оператора SQL (SELE-
CT,UPDATE,INSERT и так далее),SQL*Calc подставит значение теперь в эту ячейку
для ссылки в операторе SQL перед передачей оператора в ORACLE RDBMS для выпол-
нения.Любая ссылка на ячейку в операторе SQL должна начинаться с амперсанда
(&).Вы можете также в операторах SQL использовать диапазон ячеек.Для информа-
ции о том как SQL*Calc заменяет ссылки на ячейки или диапазоны ячеек в опера-
торе SQL обратитесь к описанию опции Error в разделе /Oracke Show-Info в главе
Ввод команд  Slash.

                             GДиапазон ячеекH
          Диапазон ячеек - это набор ячеек,который вы хотите изменить.Когда вы
задали диапазон,вы говорите "включить все ячейки в работу,которую я выполняю".
Диапазон может состоять из прямоугольного блока ячеек или ряда ячеек из строки
или колонки,или прямоугольная часть ЭТ из нескольких строк и колонок.
          Вы задаете диапазон путем ввода первой и последней координат,разде-
ленных точкой.(SQL*Calc также воспринимает двоеточие (:) между двумя координа-
тами.)
          Вот некоторые примеры возможного определения диапазонов:
 С10    единственная ячейка,в которой есть координаты строки и колонки.Завер-
        шает текущую ячейку обычно клавиша [Return].
 С1.С9  частичная колонка,в которой 9 ячеек одной колонки.
 С1.Е1  частичная строка,использующая 2 ячейки одной строки.
 С1.Е9  блок,использующий верхнюю левую и нижнюю правую ячейки диапазона.
        G[Home].[End]H - вся ЭТ.
          Диапазоны ячеек можно использовать в формулах и ячейках SQL:
       +sum(c9.c15),
       $select*into &a1.a10 from sales1,
       $select*from sales1 where name in (&a1.a10)
          Примечание:  приобретите привычку ставить амперсанд (&) перед всеми
                    ссылками на ячейки в операторах SQL; это не всегда нужно,
                    но безопаснее амперсанд включать!

                                 GУказаниеH
          Указание - это удобный метод для ввода координат ячеек в формулу,ко-
манду или оператор SQL.Зачастую вы можете обнаружить,что не можете вспомнить
на какую ячейку ссылаться.Например,вы можете забыть где находятся ежемесячные
выплаты,в колонке Q или колонке R,в то время как окно не отображает эту
часть ЭТ.
          Вместо прекращения ввода данных (путем нажатия клавиши G[Escape]H),
чтобы иметь возможность перейти в нужное окно,вам можно использовать клавиши-
стрелки для перемещения по ЭТ до нахождения нужной вам ячейки,на которую хоти-
те сослаться.
          Например,если текущая ячейка - А1 и вы ввели знак плюс,нажмите стре-
лку вниз 3 раза,введите знак минус и нажмите цифру 1,SQL*Calc поместит А4-1 в
строке ввода.Затем нажмите G[Return]H,чтобы видеть результат формулы,выве-
денной из ячейки А1.Ячейка,в которой вы нажали знак плюс - это ячейка,в кото-
рой появится результат вычисления.
          Всякий раз как вы нажимаете клавишу-стрелку строка ввода не выводит
на экран координаты текущей ячейки,но это делает строка статуса.
          Если вы нажмете клавишу-стрелку во время,не подходящее для ввода ко-
ординат ячейки,то формула или операция ввода SQL будет прервана и вы обнаружи-
те себя в основном приглашении.

                            GАвтономный вводH
          Вы можете вводить данные (то есть текст,числа,формулы или операторы
SQL) в текущую ячейку при работе в основоном приглашении:
     Press  HELP any time.(Begin SQL with $,formula with +,command with /.)
          Основное приглашение появится,когда вы начнете работать с SQL*Calc и
когда SQL*Calc закончит выполнение записей или команд.Когда вы делаете в ячей-
ке новую запись,то что в ней было ранее стирается.
          Для использования SQL*Calc как автономной программы ЭТ вы вводите
текст,числа и формулы.(Ввод операторов SQL требует,чтобы вы вошли в ORACLE
RDBMS и описан в последнем разделе этой главы.)

                 GВвод текста  Базовая запись текстаH
          Если вы отвечаете на основное приглашение введя букву или одиночную
кавычку ('),то SQL*Calc полагает,что вы хотите вводить текст в текущую ячейку.
          Приглашение изменится на следующее:
     TYPE TEXT.Press arrow key or [Return] to enter text into current cell.
     (Набирайте текст.Нажмите клавишу-стрелку или [Return] по окончании.)
          SQL*Calc воспринимает все выводимые на экран символы пока вы не наж-
мете G[Return]H.Если вы попытаетесь ввести более 240 символов,то SQL*Calc
проигнорирует лишние.Отметим,что перед текстом одиночная кавычка не нужна,если
текст не нарушается цифрами.
          Если выхотите начать запись текста с чего-то отличного от буквы,то
вам нужно сперва поставить одиночную кавычку.Например,вы можете захотеть испо-
льзовать дату как титул колонки.Введите G'21-May-85.HНЕ ставьте одиночную
кавычку в конце такой записи.

                           GПовторение текстаH
          Если первый символ,который вы вводите при основном приглашении - это
обратная косая черта,то приглашение станет следующим:
     TYPE CHARACTER TO REPEAT ACROSS CELL.Press [Return] to enter.
          Вы можете затем напечатать один символ и [Return].SQL*Calc
     повторит этот символ по текущей ячейке.
          Например,ввод [\][-] в ячейке А36 произведет последовательность тире
во всей ячейке А36.Для удлинения строки повторяющихся символов вдоль ЭТ,напри-
мер,скопируйте эту ячейку вдоль этой таблицы,например,из А36 в B36.J36.

                         GВвод чисел или формулH
          Если вы отвечаете на основное приглашение введя число,знак минус или
точку,то SQL*Calc изменит приглашение на следующее:
     TYPE NUMBER OR FORMULA.Press arrow key or [Return] when done.
          Программа затем воспримет все вводимые печатные символы до нажатия
клавиши G[Return]H.Затем SQL*Calc проверит,ввели ли вы правильное число или
формулу как показано ниже.
          Число распознается как последовательность цифр с,возможно,начальным
знаком минус или десятичной точкой.Вот некоторые примеры:
        -6.3,100,5.9763E17,1.96E-12.
          Последние 2 примера являются экспоненциальной нотацией (так называе-
мой найчной нотацией).Число после Е - это степень,в которую вы должны возвести
предшествующее ему число.Эта экспонента м.б. в диапазоне +126 - -129.Результат
этого экспоненциального числа будет выведен в ячейке,если ее ширина достаточ-
на.Если же ширина ячейки не достаточна,то число будет выведено в экспоненциа-
льном виде.

                             GВвод формулH
          Если вы ответили на основное приглашение введя знаки плюс или эт
(@),или левую скобку,то SQL*Calc изменит приглашение на следующее:
     TYPE FORMULA.Press arrow key or [Return] when done.
          Формулы намного сложнее чем числа,так что давайте рассмотрим их под-
робнее.Сперва скажем,что формула,которую иногда называют выражением,состоит из
термов,соединенных операторами.
          Терм м.б. числом,словом или словами (строкой текста в кавычках),ссы-
лкой на ячейку,функцией или другой формулой,заключенной в скобки.Другие детали
о работе функций и строк текста в формулах приводятся в следующем разделе дан-
ной главы.
          Оператор - это один или два символа,определяющте математическую опе-
рацию,выполняемую над двумя термами.SQL*Calc поддерживает следующие операторы
(где х и у представляют термы),выполняемые в приведенном порядке:
     x^y       возводит х в степень у (экспонента)
     х*у       умножить х на у
     х/у       разделить х на у
     х+у       сложить
     х-у       вычесть
     х=у       равно 1 если х равен у,иначе 0
     xy       равно 1 еслм х больше у,иначе 0
     x<>y      равно 1 если х не равен у,иначе 0
     x<=y      равно 1 если х меньше или равен у,иначе 0
     x>=y      равно 1 если х больше или равен у,иначе 0
          Здесь приведен пример формулы и порядок,в котором она вычисляется.
Если вы ввели G+230-A1^2.5>0H,то значение ячейки А1 сперва возводится в сте-
пень 2.5 и результат вычитается из 230. Затем новое значение сравнивается с 0,
если оно больше 0,то результат равен 1.
          Порядок,данный выше сохранится,если вы не введете скобки.Операции в
скобках выполняются прежде всего.Например,в формуле G+A1-4*3 Hсперва будет
умножение,а в формуле G+(A1-4)*3 H- вторым.

          1 и 0,появляющиеся в ячейках,после некоторых операций представляют
ответы Yes - Да (1) или No - Нет (0) на вопросы типа Х равен У? Они не являют-
ся цифрами!
      Примечание: помните,что нужно привыкнуть начинать формулу со знака +;
                SQL*Calc воспримет и формулы,начинающиеся со знаков минус,точ-
                ки,эт,цифры или левой скобки.
          Если вы ошиблись,помните,что каждая строка данных,напечатанная вами,
воспринимается SQL*Calc,даже если она содержит неверные числа или формулы.Вы
должны скорректировать каждую запись путем вывода ее в строку ввода нажав кла-
вишу G[Edit] Hи следуя инструкциям,данным в разделе Редактирование данной
главы.Неверные записи трактуются как текст,так что нажатие этой клавиши предс-
тавляет их с начальной кавычкой.Вы должны удалить эту кавычку если вы вводите
формулу; замените ее на знак плюс.

                                 GФункцииH
          Функция - это специальный терм в формуле,который осуществляет слож-
ные операции,например MAX - нахождение максимального значения в группе ячеек:
+МАХ(а5.а10).Имя функции сопрвождают аргументы,разделенные запятыми и заключе-
нные в скобки.Аргумент  м.б. следующим:
 *  единственное значение (х) вводимое как любая формула
 *  диапазон ячеек (r) вводимый первой и последней ячейками,разделенными точ-
    кой или пробелом,или вводимые по имени,присвоенному этому диапазону.
 *  ссылка на ячейку (с) вводимая как координата ячейки или поименованная яче-
    йка.
 *  группа значений (list),которая может содержать значения (х),диапазоны (r)
    и ссылки на ячейки,разделенные запятыми.Помните,что все формулы представ-
    лены со знаком плюс.
          Следующие функции обеспечены в SQL*Calc:
     GФункция            Ее действиеH

     ABS(x)             абсолютное значение формулы х
     ACOS(x)            арккосинус формулы х в радианах.
     AND(list)          1 (ИСТИНА),если все объекты в списке не равны 0
     ASIN(x)            аркусинус формулы х в радианах.
     ATAN(x)            арктангенс формулы х в радианах.
     AVG(list)          среднее значение всех объектов списка.
     CHOOSE(x,list)     выбрать объект номер х из списка.
     COS(x)             косинус угла х,где х в радианах.
     COUNT(list)        количество объектов в списке.
     DEG(x)             значение в градусах угла х,заданного в радианах.
     Е                  значение базы натурального логарифма (2.718..)
     ERR                значение ERR (которое означает,что при выполнении
                        формулы возникла ошибка).
     EXP(x)             число Е,возведенное в степень х (E^x).
     FALSE              значение 0.
     IF(x,t,f)          значение t - истина при х не равном 0,иначе значение f.
     INT(x)             целая часть х.
     ISERR(c)           1 - ИСТИНА если ошибка при вычислении формулы
                        произошла в ячейке с,иначе 0.
     ISNA(c)            1 - ИСТИНА,если ячейка с не доступна,иначе 0.
     LN(x)              натуральный логарифм формулы х.
     LOG(x)             десятичный логарифм х.
     LOOKUP(x,r)        значение ячейки,следующей за ячейкой,которая больше
                        или равна значению формулы х в диапазоне r.Если диапа-
                        зон r - это частичная строка,то значение - в ячейке
                        ниже.; если это частичная колонка,то значение - в яче-
                        йке справа от базовой ячейки.
     MAX(list)          максимальное значение из числовых объектов списка.
     MIN(list)          минимальное значение из числовых объектов списка.
     NA                 значение N/A (недоступно).
     NPV(x,r)           значение сети присутствует в отношении х диапазона r.
                        Это значит,что n-ая ячейка диапазона разделена выраже-
                        нием (1+х)^n и результат является суммой всех этих
                        вычислений.
     NOT(x)             1 если значение формулы х равно 0.
     OR(list)           1 если любой объект в списке не равен 0.
     PI                 значение пи (3.14159...).
     RAD(x)             значение в радианах угла х,заданного в градусах.
     SIN(x)             синус угла х,заданного в радианах.
     SQRT(x)            корень квадратный формулы х.
     SUM(list)          сумма значений списка.
     TAN(x)             тангенс угла х,заданного в радианах.
     TRUE               значение 1.
         Пособие покажет вам как использовать сочетания этих функций (AVG,SUM)
но многие из них имеют значение при решении технических проблем,не входящих в
наше обучение.Здесь вам приведены только функции,доступные в SQL*Calc и пока-
зано как вводить функции,а не их специализированное применение.
          Когда вы используете какую-либо функцию в формуле,то введите соотве-
тствующую информацию для ее аргументов.Для совместимости с некоторыми другими
программами ЭТ. SQL*Calc позволяет вам сопровождать каждое имя функции знаком
эт (@).Помните,что перед функцией ставится знак плюс,если она является первым
объектом формулы.
          Большинство функций требует список аргументов,но те из них,которые
работают с одним аргументом,игнорируют все остальные значения в списке.Кроме
того,функции,работающие со списками,и только с числами,игнорируют текстовые
объекты.

                     GТекстовые строки в формулахH
          Термы в большинстве формул являются числа или ссылки на ячейки,соде-
ржащие числа.Однако,при некоторых обстоятельствах вы можете использовать кво-
тированные текстовые строки (слова в двойных кавычках) или ссылки на текстовые
ячейки.Например,формула:
          G+if(a1<0,"negative","positive")H
     выведет слово "negative" - отрицательное - при а1 меньше нуля.
     Если ячейка А2 содержит строку текста "positive" - положительное
     - то следующая формула эквивалентна предыдущей:
          G+if(a1<0,"negative,a2)H
          Ссылки на строки текста очень полезны в функциях IF и CHOOSE.

                      GРедактирование записей данныхH
          Несмотря на то,что пользователи в большинстве своем думают,что реда-
ктирование - это только коррекция ошибок в записях,вы увидите,что в SQL*Calc
клавиша G[Edit] Hиспользуется для могих других целей,позволяя вам делать из-
менения в формулах и в извлекаемой из ORACLE RDBMS информации.
          Вы можете сделать изменения любого вида в записях,введенных в ЭТ:
     *  изменять слова или числа,которые вы ввели вручную.
     *  изменять формулы.
     *  изменять операторы SQL.
          Вы начинаете редактирование путем входа в ячейку,содержащую матери-
ал,который нужно изменить,а затем нажимаете G[Edit]H.При этом данные помеща-
ются в строку ввода,так что вы можете вносить изменения без перепечатки всей
строки.Появится следующее приглашение:
     EDIT: Use arrow keys,HOME,END,INSERT and DELETE.Press
     [Return] when done.
     (Редактирование: используйте клавиши-стрелки,HOME,END,INSERT
     и DELETE.Нажмите [Return] по окончании.)
     (Если текущая ячейка пуста,то SQL*Calc выдаст звуковой сигнал,
     чтобы сообщить о невозможности редактирования ячейки без данных.)
          Курсор появится в конце строки.Нажмите клавишу G[Home]H для пере-
мещения его в начало строки и G[End] Hдля возврата в конец строки.
          Во время редактирования клавиши-стрелки не несут своих обычных функ-
ций,а премещают курсор вдоль строки влево или вправо.
          Клавиша G[Insert] Hуправляет автоматическим добавлением.Первонача-
льно добавление включено,так что при вводе символа он появится слева от курсо-
ра.Нажмите G[Insert] Hдля выключения этого режима и теперь вводимые вами си-
мволы будут ЗАМЕНЯТЬ символы,на которые указывает курсор.
          G[Delete] Hудаляет символ над курсором также как [v].
          Нажимая G[Backspace] Hвы удаляете символ слева от курсора.
          Непечатные символы кроме стрелок,[Return] и [Escape] отбрасываются.
По окончании редактирования строки нажмите G[Return]H для сохранения строки
в текущей ячейке.Нажмите G[Escape] Hесли вы хотите остановить редактирование
и оставить текущую ячейку неизмененной.
          Иногда вы можете использовать команду EDIT для работы с формулой,со-
держащей некоторые виды ошибок ввода.Помните,что SQL*Calc хранит неверно скон-
струированные формулы как ячейки текста.Вы должны,таким образом,заменить ввод-
ную одиночную кавычку знаком плюс перед нажатием клавиши G[Return]H.Знак
плюс говорит SQL*Calc,что это формула.

                       GВвод данных из ORACLE RDBMSH
          Кроме ручного ввода информации в ЭТ,вы можете использовать SQL*Calc
для извлечения информации из таблиц ORACLE RDBMS.Вы можете изменять извлечен-
ные данные и посылать их обратно в таблицы БД.Это ускоряет работу и исключает
ошибки,возникающие при перевводе данных.
          Если вы отвечаете на основное приглашение путем ввода знака доллара
($),то этo сообщает SQL*Calc,что вы хотите вводить оператор SQL,содержащий ин-
струкции для ORACLE RDBMS.
          Наиболее общий вид оператора SQL - это оператор SELECT.Этот оператор
содержит команду для ORACLE RDBMS переслать заданный набор информации в задан-
ное место ЭТ.
          Другие операторы SQL (INSERT,DELETE,UPDATE) позволяют вам делать из-
менения в таблицах ORACLE RDBMS при работе в ЭТ SQL*Calc.Команда LOCK позволя-
ет вам сохранить таблицы ORACLE RDBMS от изменений другими пользователями.
          При каждом конструировании оператора SQL он д.б. сохранен в ячейке
ЭТ,которая станет носить название SQL-ячейка.

                              GSQL-ячейкаH
          SQL-ячейка содержит инструкцию для ORACLE RDBMS,написанную на языке
SQL,обычно это оператор SELECT.
          Для создания ячейки SQL вы должны войти в ORACLE RDBMS (смотри /Ora-
cle Logon в главе Ввод команд.) Переместите курсор текущей ячейки в ячейку,в
которой вы хотите поместить SQL-ячейку и нажмите ($) в ответ на основное приг-
лашение.
          Появится следующее приглашение:
     TYPE SQL STATEMENT.Press [Return] to execute it.Use & before pointing.
     (введите оператор SQL.Нажмите [Return] для его выполнения.Ис-
     пользуйте & перед указанием.)

                      GВведение операторов SQL SELECTH
          Как только знак доллара появится в строке ввода,оператор SQL начнет-
ся со слова SELECT,означая вид оператора SQL,который вы конструируете.
          Оператор SELECT,который вы создали,появится в текущей строке как фо-
рмула.Как только вы введете этот оператор,то увидите,что значение появится в
текущей ячейке вашей ЭТ; это значение было извлечено из ORACLE RDBMS.Оператор
SELECT может извлекать более одного значения и помещать их в диапазон ячеек.В
этом случае текущая ячейка будет верхней левой ячейкой диапазона.(Вы можете
также посылать данные в другую часть ЭТ; смотри раздел далее о клаузах INTO.)
          SELECT должен иметь как минимум 2 части:
 *  клауза SELECT перечисляет колонки ORACLE RDBMS,которые вы хотите извлечь.
    Если вы хотите извлечь все колонки даной таблицы,то введите GSELECT*H.
        В SQL*Calc ввод GSELECT* H извлекает и имена колонок помещая их
        в ЭТ в качестве титулов.
 *  Клауза GFROM Hименует таблицу или таблицы,из которых вы хотите извлечь
    колонки.
          Вот полный оператор SQL SELECT:
               G$Select * from table1H
                  |           |
               клауза       клауза
               SELECT       FROM

          Этот оператор SELECT значит "ввести в мою ЭТ все строки и колонки
    таблицы ORACLE RDBMS по имени 'table1' помещая первую запись в первую ко-
    лонку в текущую ячейку."
          В SQL*Calc можно вводить третью клаузу между SELECT и FROM:
 *  клауза INTO указывает где в ЭТ появятся данные.
          Вот оператор SQL SELECT с клаузой INTO:
               G$select * into &a3.d15 from table1H
                  |           |            |
               клауза      клауза       клауза
               SELECT      INTO         FROM

          Этот пример дан в полной форме клаузы INTO.Он точно опре-
     деляет строки и колонки,в которые нужно вводить данные.Обычно
     применяют вариации этой клаузы:
     (1)  Вы не знаете сколько строк и колонок нужно извлечь и хотите иметь
          SQL-ячейку в верхнем левом углу блока данных.Решение: исключить кла-
          узу INTO и SQL*Calc просто введет данные,начиная с текущей ячейки.
     (2)  Вы не знаете сколько строк данных вы будете извлекать и вы хотите,
          чтобы SQL-ячейка отделилась от блока данных. Решение: используйте
          клаузу INTO,но обозначьте только первую ячейку диапазона как верхний
          левый угол блока данных.Вот пример оператора,как-бы введенного в а2:
               G$select * into &a5 H   G from table1H
                  |           |            |
               клауза      клауза       клауза
               SELECT      INTO         FROM

     (3)  Вы хотите переключить ориентацию таблицы так что SQL*Calc выведет
          запись из таблицы по колонке вниз (вместо по строке вправо),начиная
          с SQL-ячейки. Решение:  добавьте слово "columns" в клаузу INTO вмес-
          те со ссылкой на ячейку.Например:
               G$select * into columns &a1 H G from table1H
                  |           |                  |
               клауза      клауза              клауза
               SELECT      INTO                FROM

          Если вы используете SELECT* с INTO COLUMNS,то титулы колонок появят-
ся в первой колонке данных.
          Когда вы используете одну из этих вариаций,SQL*Calc автоматически
введет в оператор диапазон ячеек,которые он в действительности использует для
приема входных данных.
     Примечание: если вы решили изменить оператор SELECT после нажатия
               [Return],примените [Edit] для изменений вместо перепечатки опе-
               ратора.SQL*Calc должна иметь возможность обращаться к предыду-
               щему диапазону INTO перед переисполнением ячейки.Этим способом
               извлеченные новые данные заменят старые.
          Вы можете сузить фокус оператора SELECT сообщая SQL*Calc,что нужно
использовать только данные из ORACLE RDBMS,удовлетворяющие следующим условиям.
 *  Клауза GWHERE Hопределяет любые условия,которые вы хотите выпол-
        нить перед извлечением строки или записи данных.Например:
               G$select * from table1  where region='West'H
                  |           |               |
               клауза      клауза           клауза
               SELECT      FROM             WHERE
          Теперь SQL*Calc будет извлекать из ORACLE RDBMS только дан-
     ные,относящиеся к западному региону.
          В SQL*Calc вы можете сослаться на другую ячейку ЭТ используя условие
WHERE.Поместите амперсанд (&) перед ссылкой на ячейку,так что SQL*Calc поймет,
что вы ссылаетесь именно на ячейку.Например:
               G$select * from table1   where region=&c5H
                  |           |               |
               клауза      клауза           клауза
               SELECT      FROM             WHERE
          В с5 вы найдете слово 'West' или имя нужного вам региона.
          Для рассмотрения дальнейших примеров как используются ссылки на яче-
йку в клаузе WHERE обратитесь к урокам 3 и 4.Для получения информации о том
как SQL*Calc замещает ссылки на ячейки,смотри опцию Error в разделе /Oracle
Show-Info в главе Ввод команд Slash.
          Для получения сведений об использовании других клауз SELECT типа
GROUP BY,ORDER BY и HAVING,смотри книги SQL Primer,Introduction o ORACLE,
Overview of SQL.

                          GДругие операторы SQLH
          Иногда вам может потребоваться изменить данные в вашей ORACLE RDBMS
на данные из ЭТ при помощи операторов SQL INSERT,DELETE,UPDATE.
     GПримечание: HКоманды ORACLE RDBMS INSERT и DELETE используются для
                 введения и добавления строк в таблицы ORACLE RDBMS.Они отли-
                 чаются от команд SQL*Calc /Worksheet Insert и /Worksheet
                 Delete,которые вводят и удаляют строки или колонки в ЭТ.
          Эти команды посылаются в SQL*Calc когда вы вводите знак доллара и
затем одно из трех слов в качестве первого слова оператора SQL в строку ввода.
(Они не являются командами Slash ORACLE.)
          Когда  вы используете оператор INSERT из ЭТ,вы можете применять ссы-
лки на ячейки для ввода данных уже выведенных на экран.Например,для ввода дан-
ных в таблицу в D4 был введен следующий оператор:
          G$insert into table1 values(&a4.c4)H
          Тогда оператор скопирован вниз по колонке D (изменяя ссылки
     на ячейки) для ввода каждой строки как показано на экране ниже:

     GРисунок 5-1H
    |         A          B           C     D    E    F    G    H     |
    |   1  SALES FILE:                                               |
    |   2                                                            |
    |   3  SALESPERSON CUSTOMER       AMOUNT                         |
    |   4  Allen       Acme Trucking      30 **SQL**                 |
    |   5  Allen       Hillside Dairy     20 **SQL**                 |
    |   6  Ward        Cozy Furniture     30 **SQL**                 |
    |   7  Garcia      Gollub Garage      20 **SQL**                 |
    |   8  Martin      Deli Delivery      30 **SQL**                 |
    |   9  Wong        Mercury Towing     40 **SQL**                 |
    |  10  Clark       Perfect Movers     10 **SQL**                 |
    |  11  Schmidt     Ski Shuttle        20 **SQL**                 |
    |  12  Ward        Tri-City Bus       40 **SQL**                 |
    |  13  Allen       Southside Tow      20 **SQL**                 |
    |  14  Garcia      Airport Shuttle    10 **SQL**                 |
    |  15  Martin      Best Delivery      10 **SQL**                 |
    |  16  Ward        U-Haul             20 **SQL**                 |
    |  17  Garcia      Vans Galore        10 **SQL**                 |
    |  18  Clark       Bayside Hauling    30 **SQL**                 |
    |  19  Allen       XYZ Pickup         10 **SQL**                 |
    |  20  Wong        Speedy Delivery    10 **SQL**                 |
    |  21  Clark       Pack and Move      20 **SQL**                 |
    | 18% USED   D4(SQL)=insert into table1 values (&a4.c4)          |
    |Press HELP any time.(Begin SQL with $,formula with +,command wi-|
    |th /.)                                                          |

          Нотация **SQL** показывает,что в каждой ячейке имеется ячейка SQL.
          Вы можете также использовать ссылки на ячейки в операторе
     UPDATE.Например:
          G$update table1 set amount=&c4 where salesperson=&a4H
          Когда вы сделаете изменения в таблицах ORACLE RDBMS,то можете посчи-
тать команду /Oracle Execute Lock полезной для запрета другим пользователям
работать с вашей ЭТ.Смотри также команды /Oracle Commit и /Oracle Rollback в
главе Ввод команд /Slash.
          Для получения полной информации об операторах SQL обрати-
     тесь к книгам SQL Primer,Introduction to ORACLE,Overview of SQL.

                        GИсполнение ячейки SQLH
         Вы видели,что когда создаете оператор SQL и вводите его в SQL-ячейку,
SQL*Calc и ORACLE RDBMS исполняют операцию,которую вы хотите.Вы можете испол-
нить команду,которую ввели в SQL-ячейку 5-ю способами:
(1)  создать новую ячейку SQL;
          как только вы завершите ввод и проверите его,нажмите кла-
          вишу [Return],что пошлет инструкцию в ORACLE RDBMS.
(2)  скопировать существующую SQL-ячейку;
          когда вы копируете существующую SQL-ячейку,на каждой ячейке,в кото-
          рую происходит копирование,появляется запись *Copied*.Для завершения
          процесса копирования вы должны нажать G[*Copied*].HПодождите пока
          копирование не завершится перед продолжением работы в SQL*Calc.
(3)  использовать клавишу G[Edit] Hдля редактирования оператора SQL;
          при помощи приемов редактирования,описанных в предыдущей секции,вы
          можете,например,изменить клаузу WHERE для включения другого набора
          данных в ваших записях.
(4)  использовать команду /Oracle Execute;
          при помощи этой команды (смотри раздел Ввод команд Slash) вы можете
          переисполнить оператор в,диапазон операторов или все операторы SQL в
          ЭТ.Для переисполнения всех операторов SQL SELECT в ЭТ,вы можете выб-
          рать короткий путь: нажмите клавишу G[Query].HВам нельзя использо-
          вать эту клавишу для переисполнения других операторов SQL; если нуж-
          но переисполнить диапазон операторов не SELECT,вы должны использова-
          ть команду /Oracle Execute.
(5)  использовать клавиши G[Edit][Return]H
          нажимая эти клавиши вы переисполняете оператор SQL в текущей ячейке.
          При помощи этих клавиш вы можете переисполнить любой тип оператора
          SQL.
          Когда вы выполняете оператор SQL INSERT,DELETE,UPDATE,то SQL*Calc
информирует вас о завершении операции выводя на экран G**SQL** Hв ячейке,
содержащей оператор.
          Если ошибка произошла во время исполнения любого оператора SQL,то вы
получите сообщение об ошибке,указывающее на часть оператора с ошибкой.Тогда вы
можете скорректировать ошибку при помощи [Edit] и переисполнить его нажав
[Return].Смотри раздел о команде /Oracle Show-Info в главе Ввод команд Slash,
где приведены типичные экраны с ошибкой.

     Когда вы выполняете оператор SELECT,произойдет одно из следующих событий:
 *  если вы ввели оператор правильно,то данные появятся как предполагалось.В
    зависимости от диапазона INTO вы можете получить условия переполнения или
    недокомплекта,как это было показано выше.Когда SQL-ячейка находится вне
    заданного диапазона,то эта ячейка маркируется G**SQL**H.Оператор SQL по-
    является в строке статуса вместе с клаузой INTO,добавленной,чтобы показать
    диапазон ЭТ для приема вводимых данных.Если извлекаются данные для неско-
    льких колонок и они уже заполнены другой информацией,то SQL*Calc выведет
    сообщение о том,чтобы вы подтвердили стирание этих ячеек (используя ко-
    манду /Range Erase).Если синтаксис оператора некорректен,то вы получите
    сообщение об ошибке и G**SQL** Hпоявится в ячейке.Скорректируйте опера-
    тор при помощи клавиши G[Edit]H.Для дополнительной информации смотри ра-
    здел об опции /Error в описании команды /Oracle Show-Info.
        Если программа не может найти данные в ORACLE RDBMS,соответствующие
        вашему запросу,то в ячейке появится G**SQL**H.Любые данные,попавшие
        в диапазон INTO,заменяются пробелами.Вам не сообщается о недокомплекте.
          Красота операторов SQL в SQL*Calc в том,что после их создания вы мо-
    жете использовать их много раз.Оператор SELECT можно модифицировать новыми
    условиями SELECT или просто переисполнять позже для обновления ЭТ текущими
    данными из ORACLE RDBMS.
 *  для переисполнения оператора в одной текущей ячейке SQL используйте клави-
    ши G[Edit][Return]H
 *  для переисполнения диапазона SQL-ячеек используйте команду /Oracle Execute.
 *  для переисполнения всех операторов SQL SELECT в ЭТ используйте клавишу
    G[Query]H.
          Операторы в SQL-ячейках исполняются в порядке строки или колонки в
соответствии с текущим порядком вычислений /Worksheet Options.
          Для прекращения исполнения SQL-ячеек в любое время нажмите
G[Escape]H.Если вы исполняете набор SQL-ячеек,то процедура будет остановле-
на: SQL-ячейки не будут редактироваться,но уже отредактированные выведут на
экран новые значения в ЭТ.
          Если опция /Worksheet Options установлена для автоматического переи-
сполнения - ON - когда выполнение SQL завершено,все формулы в ЭТ будут переис-
полнены.Если она в состоянии OFF - выключено - то для переисполнения нужно на-
жать клавишу G[Calc]H.
          GПримечание: H может потребоваться нажать клавишу G[Calc] Hнес-
колько раз для того,чтобы значения в ЭТ стали верны,особенно если вы изменили
несколько ее ячеек введя формулы после последнего переисполнения.Причина этого
лежит в способе,которым вычисляются значения ЭТ.(Для получения подробных объя-
снений смотри раздел Команда /Worksheet Options в главе Ввод команд Slash.)

                            GПереполнениеH
          Условие переполнения возникнет при выполнении оператора SELECT со
следующими условиями:
(1)  вы не задали диапазон INTO и извлечено несколько строк.
(2)  заданный диапазон INTO слишком мал для помещения всех требуемых данных.
     Это часто происходит когда вы изменили параметр выборки и переисполнили
     оператор SELECT.

                          GПереполнение строкH
          Если вы запросили больше записей,чем можно поместить в текущий диа-
пазон INTO,то программа поместит столько строк,сколько можно в диапазоне,и вы-
даст следующее сообщение:
     OVERFLOW: 15 EXTRA ROWS.Insert Overwrite Stop
          Если  вы выбрали опцию Insert,SQL*Calc введет новые строки для хра-
нения вводимых данных и расширит диапазон INTO.Это сохранит относительное по-
ложение данных в строках вне диапазона INTO,такое как скажем общая черта.Ког-
да вы выбираете опцию Insert,но не ввели формулы в предыдущей строке,появится
следующее приглашение:
     WORKSHEET INSERT: Copy formulas and SQL stmts from preceding row?
                        Yes No
     (ввод в ЭТ: Копировать формулы и SQL stmts из предыдущей строки? Да Нет)
          Введите G[Return]H или GYH для копирования формул и  операторов
     SQL из предыдущей строки во вводимую строку.
          Введите GNH,если копировать не нужно.
          Опция переписывания -Overwrite - помещает дополнительные да-
     нные в существующие строки вне диапазона INTO стирая находящиеся
     там данные.Если ячейки защищены,то их стереть нельзя.
          Опция  Stop останавливает операцию без помещения остающихся
     данных из ORACLE RDBMS в ЭТ.

                           GПереполнение колонкиH
          Если вы используете опцию INTO columns для размещения записей из
ORACLE RDBMS в колонки вместо строк и затребовали больше колонок,чем в диапа-
зоне INTO,то появится следующее сообщение:
     OVERFLOW: 15 EXTRA COLUMNS.Insert  Overwrite  Stop
          Выбрав опцию G Insert H вы введете новые колонки для приема вводи-
мых данных.Это сохраняет относительное расположение данных в любых колонках
справа.Когда вы выбираете опцию Insert и в предыдущей колонке нет формул,то
появится следующее приглашение:
   WORKSHEET INSERT: Copy formulas and SQL stmts from preceding column? Yes No
     (ввод в ЭТ: Копировать формулы и SQL stmts из предыдущей колонки? Да Нет)
          Введите G[Return]H или GYH для копирования формул и  операторов
     SQL из предыдущей колонки во вводимую колонку.
          Введите GNH,если копировать не нужно.
          Опция переписывания -Overwrite - помещает дополнительные да-
     нные в существующие колонки вне диапазона INTO стирая находящиеся
     там данные.Если ячейки защищены,то их стереть нельзя.
          Опция  Stop останавливает операцию без помещения остающихся
     данных из ORACLE RDBMS в ЭТ.

                               GНедокомплектH
          Условие недокомплекта произойдет при выполнении оператора SELECT и
при заданном диапазоне INTO слишком большом  для принимаемых данных.Это часто
происходит при изменении параметра выборки и переисполнении ячейки.
          (Вы не получите такого условия при синтаксической ошибке в операторе
SQL SELECT и SQL*Calc не извлечет данные.В этом случае ячейка SQL будет поме-
чена G**SQL** Hи вы получите сообщение об ошибке.Скорректируйте ошибку и пе-
реисполните оператор.)
          Если  программа  не может найти данные в ORACLE RDBMS,то в
     ячейке тоже появится G**SQL**H.Любые данные,попавшие в  диапазон
     забиваются пробелами.При этом сообщения о недокомплекте не будет.

                            GНедокомплект для строкH
          Когда вы затребовали меньше записей,чем можно разместить в текущий
диапазон INTO,то SQL*Calc поместит новые записи в ЭТ,сотрет старые записи и
спросит,что делать с пустыми строками:
     UNDERFLOW: 15 FEWER ROWS.Stop Delete

          Выбрав опцию Delete вы удалите пустые строки и измените диапазон
INTO.При этом сохранится относительное положение данных в строках вне диапазо-
на INTO,таких как общая черта.
     Опция Stop оставит пустые строки на месте,но не включит их диапазон INTO.

                         GНедокомплект для колонокH
          Когда вы затребовали меньше записей,чем можно разместить в текущий
диапазон INTO,то SQL*Calc поместит новые записи в ЭТ,сотрет старые записи и
спросит,что делать с пустыми строками:
     UNDERFLOW: 15 FEWER COLUMNS.Stop  Delete
          Выбрав опцию Delete вы удалите пустые клонки и измените диапазон
INTO.При этом сохранится относительное положение данных в колонках вне диапа-
зона INTO,таких как общая черта.
    Опция Stop оставит пустые колонки на месте,но не включит их диапазон INTO.

+                    GГлава 6  Ввод команд SlashH
                           GВвод команд SlashH
          Команды Slash инициируются при помощи нажатия клавиши [/] при выве-
денном основном приглашении.SQL*Calc группирует эти команды в 8 наборов.Когда
вы нажмете эту клавишу,SQL*Calc выведет меню:
               Worksheet Range Copy Layout File Print Oracle Quit
          Некоторые из этих объектов включают в себя поднабор команд (напри-
мер,/Worksheet или /Oracle) причем каждая команда имеет свой набор опций,дру-
гие команды типа Quit намного проще и предоставляют только небольшой выбор де-
йствий.
     GГруппа             Команда          ОпцииH
     /Worksheet         Options
                        Insert
                        Delete           смотри команды /Worksheet
                        Move             в данной главе
                        Title
                        Window
     /Range             Erase
                        Name             смотри команды /Range
                        Sort             в данной главе
                        Protect
                        Unprotect
                        /Copy
                        /Layout          Column,Horiz-Row,Field,
                                         Worksheet,Modify-Styles
     /File              Retrive
                        Save             смотри команды /File
                        Link             в этой главе
                        Merge
                        Utilities
                        /Print           Printer
                                         File
                                         Options
     /Oracle            Execute
                        Show-Info
                        Logon            смотри команды /Oracle
                        Сommit           в этой главе
                        Rollback
                        Options
                        Table
                        /Quit

          Когда меню команды Slash выводится на экран первый раз,то курсор вы-
свечивает слово GWorksheetH и строка ниже описывает команды Worksheet.При
нажатии клавиши правой стрелки [-->],высвечивается слово G RangeH и выводит
строку,описывающую команды /Range.Для выбора команды или группы команд вы мо-
жете сделать одно из двух:
 *  нажмите G[Return]H,когда этот набор команд высвечен.
 *  просто введите первую букву команды.
          Тогда вы получите новое приглашение.
          Например,когда  вы  вводите /GRH,то вам будут показаны все
     команды,доступные для выполнения в этой группе /Range:
               RANGE:  Erase  Name  Sort  Protect  Unprotect
          Следующие разделы описывают каждую из команд  и  ее  опции.
     Команда и опции описаны в том порядке,как они выведены на экран SQL*Calc.

                             GКоманды WorksheetH
          Если вы выбрали команду /Worksheet,то вы будете исполнять команду,
воздействующую на всю ЭТ.Когда ваш выбор закреплен,вы увидите следующее меню
опций:
      WORKSHEET:  Options  Insert  Delete  Move  Erase  Title  Window

                          GКоманда /Worksheet OptionsH
          Если вы выбрали GOptions Hиз меню /Worksheet,то можете изменить
некоторые установки,управляющие способами вывода на экран и вычисления запи-
сей.SQL*Calc выводит текущие опции в области окна как список с указателем (->):

     GРисунок 6-1H
      |                                                              |
      | ->Cell cursor movement stops when cursor key is released  (1)|
      |   Automatic recalculation (after data entry)              (2)|
      |   Calculate row by row                                    (3)|
      |   Display worksheet borders                               (4)|
      |   Automatic scrolling                                     (5)|
      |   During COPY,cell references change as set in next option(6)|
      |   Cell reference in uppercase=absolute,lowercase=relative (7)|
      |   Display **SQL** on display/printouts                    (8)|
      |                                                              |
          Список показан в его начальном состоянии,это значит,что он появляет-
ся при вызове /Worksheet Options немедленно после начала работы с SQL*Calc.
Программа возвратит к этой установке после использования команды /Worksheet
Erase.Эти опции по умолчанию и работают пока не изменить их.(Числа в скобках
не выводятся на экран и показаны здесь для дальнейших ссылок.)
          Используйте клавиши вертикальных стрелок для перемещения указателя
-> к нужной вам опции,после чего нажмите G[Spacebar] H- пробел для ее изме-
нения.Когда вы нажмете G[Return]H,все изменения сохраняются.Если вы нажмете
клавишу G[Escape]H,то команда отменится и изменений опций не будет.
          Когда вы сохраните ЭТ (при помощи команды /File Save),все установки
для нее сохранятся вместе с другими записями,которые вы сделали.Установки пе-
резагружаются вместе с ЭТй при использовании команды /File Retrieve.
          Установки,сделанные вами,не возвратятся к исходному положению после
выполнения команды /File Save.Они возвратятся к значениям по умолчанию только
при выполнении команды /Quit SQL*Calc или /Worksheet Erase.

                       GОпция повторения курсора (1)H
          Опция (1) определяет как SQL*Calc управляет вводом с клавиатуры при
нажатии клавиш курсора (клавиши-стрелки,например) повторно.
          Начальная установка выглядит следующим образом:
     Cell cursor movement stops when cursor key is released
     (движение курсора ячейки прекратится при освобождении клавиши)
          Несмотря  на ваш ответ,изменяющий суть этой опции,движение
     курсора прекратится при освобождении клавиши-стрелки.
          Иногда,однако,вам нужно убедиться в том,что текущая ячейка перемеща-
ется через несколько колонок и строк и вы нажимаете стрелку требуемое число
раз.Вы можете изменить опцию движения курсора на следующую:
     Cursor key type-ahead is allowed
          Теперь SQL*Calc будут продолжать движение текущей ячейки даже после
освобождения клавиши пока не будет сделано правильное число перемещений.
          Используйте эту опцию,когда вы хотите применить сохранитель строк
клавиатуры (программу,которая заменяет строки клавиш).Это полезно при работе
на терминале,расходующем значительное время на обновление экрана (из-за низкой
скорости обмена данными или разделения времени на компьютере).При помощи этой
опции вы можете заранее ввести много строк и SQL*Calc правильно их обработает.
          Эта возможность особенно важна,когда установка Recalculation устано-
влена в автоматическое вычисление (начальная установка),поскольку не будет за-
держки после ввода куска данных.

                     GОпции перевычисления (2) и (3)H
          Опции (2) и (3) определяют как и когда SQL*Calc будет перевычислять
формулы.Вот начальная установка для опции (2):
     Automatic recalculation (after data entry)
     (автоматическое перевычисление (после ввода данных))
          Это значит,что все формулы перевычисляются при вводе нового числа
или формулы.Когда вы измените установку,вы увидите следующее:
     Manual recalculation (press CALC key)
     (ручное перевычисление (нажмите клавишу CALC))
          Теперь при изменении содержимого ячейки путем ввода новых данных или
редактирования ее содержимого после нажатия G [Edit]H,автоматически перевы-
числяется только эта ячейка.Изменение на ручную опцию значит,что вы должны
провести перевычисление ЭТ путем нажатия G[Calc]H.
          Если вы копируете содержимое ячейки в другую ячейку,перевычисление
будет автоматическим даже при установке его ручного запуска.
          Вы можете найти полезным использовать ручной режим при построении
новой ЭТ; вы обычно не хотите выполнять полное перевычисление пока все формулы
не будут введены.
          Вы можете нажать G[Calc] Hнесколько раз перед тем как значения ва-
шей ЭТ станут достоверны,особенно если вы сделали несколько изменений формул
в ЭТ.Причина этого лежит в способе вычисления значений ЭТ: А1 всегда вычисляе-
тся перед В2 и так далее; если А1 содержит формулу или оператор SQL со ссылкой
на В2,которая в свою очередь ссылается на С3,а вы изменили С3,то при первом
проходе по ЭТ SQL*Calc не получит правильное значение для В2,когда оно вычис-
ляется для А1.Затем вы должны нажать еще раз клавишу G[Calc] Hдля получения
правильных значений.
          Циклическая ссылка получается,когда формула ссылается на ее собстве-
нное значение или на вторую формулу,которая в свою очередь ссылается на пер-
вую.Циклическая ссылка будет изменяться всякий раз как вы нажимаете G[Calc]H.
          Опция (3) определяет,первычислять строка  за  строкой  или
     колонка за колонкой.Начальная установка следующая:
     Calculate row by row
     (вычислять строка за строкой)
          Пока вы не измените эту опцию,SQL*Calc будет перевычислять строка за
строкой.При этом SQL*Calc работает слева направо от ячейки А1 к IV1,А2 - IV2 и
так далее.Изменяя эту установку получим следующее:
     Calculate column by column     (вычислять колонка за колонкой)

  Вычисление колонка за колонкой идет от А1 до  А8192,В1  - В8192 и так далее.
          Помните,что  вы  должны нажимать G[Calc] Hнесколько раз для
     полного перевычисления.

                       GОпции вывода на экран (4) и (5)H
          Опции (4) и (5) определяют как выводить на экран и прокручивать окна.
          Начальная установка опции (4) следующая:
     Display worksheet borders
          Границы идентификации строк и колонок появились в левой и верхней
областях окна,соответственно.Вы можете изменить их так,что не будет видимых
границ:
     Do not display worksheet borders
          Вы теперь имеете несколько больше площади экрана.Вы можете теперь
сообщить,где находится текущая ячейка,просматривая строку статуса.Однако,вы не
будете знать,где заканчивается одно окно и начинается другое при работе с от-
дельными окнами (после применения команды /Worksheet Window Horizontal или
     /Worksheet Window Vertical).
          Начальная установка опции (5) следующая:
     Automatic scrolling       (автоматическая прокрутка)
          Эта установка приводит к автоматическому перемещению окна направо,
налево,вверх или вниз по ЭТ при достижении курсором границ экрана при нажатой
клавише-стрелке.
          Изменение этой опции приведет к:
     Manual scrolling (press [Return] to redisplay screen)
     (ручная прокрутка (нажмите [Return] для перевывода экрана))
          Теперь высвечивание текущей ячейки исчезнет когда вы сдвинете экран,
но строка статуса будет указывать адрес текущей ячейки.Окно переместится на
новую область ЭТ при нажатии клавиши G[Return]H при нахождении в основном
приглашении.
          Используйте эту опцию для управления,когда нужно перевывести экран в
конкретной точке,а клавиши-стрелки вы используете для перемещения по экрану.
Эта возможность полезна при работе с терминалами,долго перевыводящими экран
при перемещении окна.
          Как только высвеченный курсор ячейки выводится за экран,экран не бу-
дет перевыведен,чтобы увидеть новый экран,нажмите клавишу G[Return]H.
          Только клавиши-стрелки будут перемещать высвеченный курсор ячейки по
экрану.Клавиши G[Home],[End],[PageUp] HиG [PageDown]H будут первыводить
экран также как любые команды,изменяющие содержимое экрана.

                      GОпции изменения (6) и (7)H
          Эти 2 опции определяют как изменять ссылки на ячейки при копировании
формул.Начальная установка опции (6):
     During COPY,cell referencer change as set in next option
     (во время копирования ссылки на ячейки изменяются так,как уста-
     новлено в следующей опции)
          Эта установка значит,что во время копирования изменяются ссылки,на-
писанные маленькими буквами или ссылки,написанные большими буквами в зависимо-
сти от установки опции (7).Но иногда вам может потреброваться изменять ВСЕ
ссылки на ячейки во время копирования.В этом случае измените опцию (6):
     All cell references change during COPY
     (все ссылки на ячейки изменяются во время копирования)
          Эта форма изменения иногда носит название абсолютного копирования.
     Пример:            Содержимое А1:    +а2+а3
                        /Copy Ga1,b1H
                        Содержимое В1:    +b1+b3
          При возврате к установке по умолчанию ссылки на ячейки будут изменя-
ться во время копирования в соответствии с установкой опции (7).Установка по
умолчанию опции (7) следующая:
     Cell reference in uppercase=absolute,lower case=relative
     (ссылка на ячейку большими буквами - абсолютна,маленькими - относительна)
          Эта установка значит,что только ссылки маленькими буквами будут из-
меняться при копировании формулы в другие части ЭТ.То есть ссылка на ячейку
А23 не изменится,а а23 - изменится на b23 при копировании формулы в колонку В.
     Пример:            Содержимое А1:   +а2+А3
                        /Copy Ga1[Return]b1[Return]H
                        Содержимое В1:   +b2+A3
          Вы можете изменить эту опцию так,что ссылки большими и ма-
     ленькими буквами реверсируют свое действие во время копирования:
     Cell reference in uppercase= relative,lowercase=absolute
          Вам нужно строго следить за применением больших и маленьких
     букв в формулах для правильного копирования.
          Когда вы используете технику указания для ввода формул,все ссылки на
ячейки будут поставлены маленькими буквами (а3,се23 и так далее).Смотри раздел
Указания в главе 5,Ввод данных в ЭТ.

                        GВывод на экран опций (8)H
          Когда вы вводите оператор SQL в ячейку вне заданного диапазона в
операторе,вы увидите запись **SQL** в этой ячейке.
          Опция изменения (8) позволяет вам подавить этот  вывод.По
     умолчанию это следующее сообщение:
     Display **SQL** on display/printouts
     (вывести **SQL** на дисплей/принтер)
          Если  вы не хотите видеть это сообщение на экране или прин-
     тере,то измените сообщение на следующее:
     Don't display **SQL** on display/printout

                       GКоманда /Worksheet InsertH
          КомандаG Insert Hпозволяет добавлять строки или колонки в ЭТ.Эта
команда работает также как опция Insert,которую вы можете выбрать при выполне-
нии оператора SQL SELECT и получить сообщения о переполнении диапазона.(Смотри
примечания по переполнению в разделе Ввод операторов SQL в главе 5,Ввод данных
в ЭТ.)
          Когда  вы  выбираете  команду  Insert  из  меню  Worksheet,
     SQL*Calc изменит приглашение на следующее:
     WORKSHEET INSERT:  Row  Column
          Вы  можете  выбрать GRowH илиG Column Hпереместив курсор на ваш
     выбор и нажав клавишу G[Return]H или введяG RH илиG CH.
          Если вы выбрали GRowH,то вас попросят ввести диапазон или нажать
G [Return] H для ввода новой пустой строки вместо текущей.Если в предыдущей
строке есть формулы или операторы SQL,то вы будете спрошены о желании скопиро-
вать их в новую строку.После вашего ответа Yes - да или No - нет,новая строка
будет введена и номера текущей строки и всех следующих увеличатся на единицу.
(Текст и числа не копируются в новую строку.)
          Если вы выбрали GColumnH,то вас попросят ввести диапазон или нажа-
ть G [Return] H для ввода новой пустой колонки вместо текущей.Если в преды-
дущей колонке есть формулы или операторы SQL,то вы будете спрошены о желании
скопировать их в новую колонку.После вашего ответа Yes - да или No - нет,новая
колонка будет введена и номера текущей колонки и всех следующих увеличатся на
единицу.(Текст и числа не копируются в новую колонку.)
          Диапазоны в этой команде используются специфически.Диапазон,который
вы сообщаете для ввода,означает,сколько строк и колонок вы хотите ввести и ку-
да их ввести.
          Вот некоторые примеры; испробуйте их на вашей ЭТ и вы познакомитесь
с их принципами.
          G/Worksheet Insert Row a3.a4H
эта команда будет вводить две строки 3 и 4.Старая строка 3 теперь станет стро-
кой 5 и все,что ниже смещается на 2 строки.
          G/Worksheet Insert Row b3.c3H
эта команда введет только одну строку 3.Все строки ниже 3 смещаются на один
номер.
          G/Worksheet Insert Column a3.a4H
эта команда введет одну колонку,так что колонка А новая.Все,что было в колонке
А и справа от нее сдвигается на одну колонку вправо.
          G/Worksheet Insert Column b3.c3H
эта команда введет 2 колонки,так что колонки В и С - новые.Все,что было в ко-
лонке В и справа перемещается на 2 колонки вправо.
     Когда строка или колонка вводятся,все ссылки на ячейки в формулах и опе-
раторах SQL изменяются по необходимости.Поименованные диапазоны изменяются для
включения новых строк и колонок.
     GПримечание: H будьте осторожны при введении строк и колонок.Диапазоны,
используемые в ячейках SQL не будут включать новые строки или колонки если они
вводятся Gпосле Hпоследней ячейки в диапазоне.Посмотрите пример:
                           А
               1        500.00
               2        600.00
               3         50.00
               4      --------
               5     +sum(a1.a3)
               ...

          Если вы переместились в а4 и использовали команду /Worksheet Insert
Row [Return],вы введете новую строку 4 и общая черта и формула будут спущены
вниз на а5 и а6.Формула все еще будет та же самая,однако.Если вы хотите,чтобы
новое значение вошло частью суммы,это будет! Вы должны включить общую черту в
сумму,введя G+sum(a1.a4) Hв первом месте.
          Вы не можете вводить строку или колонку если строка 8192 (в команде
Row Insert) или колонка IV (в команде Column Insert) содержит хоть одну ячей-
ку,на которую есть ссылка в формуле.Если она просто содержит данные,то ячейка
удаляется.Если на эти данные есть ссылка,то команда прекращается.Вам не нужно
вводить строки или колонки если нет строк или колонок за теми,которые вы хоти-
те ввести.

                       GКоманда /Worksheet DeleteH
          Команда Delete удалит все строки или колонки.Эта команда работает
так же как опция Delete при ее выборе,когда вы исполняете оператор SQL SELECT
и получили сообщение о недокомплекте диапазона.(Смотри примечания по недокомп-
лекту в разделе Ввод SQL операторов в главе 5,Ввод данных в ЭТ.)
     Приглашение следующее:
     WORKSHEET DELETE:  Row  Column
          Вы можете выбрать строку и колонку перемещаясь по выборам и нажав
G[Return]H,или введя буквы R или С.Вы затем приглашаетесь ввести диапазон
или нажать G[Return]H для удаления только текущей строки или колонки.Строка
(строки) или колонка (колонки) удаляются и все строки или колонки со старшими
номерами становятся на один номер меньше.
          В обеих случаях формулы изменяются для ссылки на одни и те же ячей-
ки.Например,если вы удалите строку 3,ссылки на строки с 4 по 8192 уменьшатся
на единицу.Кроме того,если вы попытаетесь удалить строку или колонку,содержа-
щую ячейку со ссылкой куда-то,то команда отменяется и появится соответствую-
щее сообщение об ошибке в строке статуса.
          Вам не нужно удалять если нет ничего в строках или колонках за уда-
ляемой.Если вы просто хотите очистить текущее содержимое ячеек в некоторой ст-
роке или колонке,то примените команду /Range Erase.

                        GКоманда /Worksheet MoveH
          Эта команда,/Worksheet Move,перемещает одну строку или колонку за
единицу времени в другую часть ЭТ.
          Если вы из меню /Worksheet выбрали команду Move,то
     SQL*Calc изменит приглашение:
     Enter letter of column (or number of row) to Move current column (row) to
  (введите букву колонки (или номер строки) для Move текущей колонки (строки))
          Вы ответите введя номер строки (от 1 до 8192) или буквы колонки
(А-IV).Тогда текущая строка ил колонка переместятся в заданное место и все по-
тревоженные строки и колонки сдвинутся для закрытия щели.По необходимости ссы-
лки в формулах изменяются.

          Вот пара примеров команд Move:
             G/W  M  B   Hперемещает текущую колонку в колонку В
             G/W  M  4H   перемещает текущую строку в строку 4.
          Если вы переместите текущую строку вниз,то строка,которую она заме-
щает вверх,если вверх - то строка,которую она замещает - вниз.
          Когда вы перемещаете колонку направо,то колонка,которую она замещает
сдвигается влево и наоборот.(Небольшой эксперимент на экране гораздо проще,чем
описание в книге.)
          Осторожно перемещайте строки,содержащие конечные точки диапазонов,
используемых в формулах.Вы можете изменить количество строк в диапазонах.

                       GКоманда  /Worksheet EraseH
          Команда Erase очищает всю ЭТ и переустанавливает все опции,изменен-
ные при помощи /Worksheet Options или /Layout,в их начальное состояние.Пригла-
шение следующее:
     WORKSHEET ERASE?  No  Yes
          Если вы действительно хотите очистить всю ЭТ,выбирайте Yes.В против-
ном случае - No.Помните,что команда Erase не сохраняет ЭТ в дисковом файле,так
что нужно использовать сперва команду /File Save.
          Эта команда устанавливает ЭТ в положение,в котором она была,когда вы
первый раз стали работать с SQL*Calc:
 *  все ячейки очищены;
 *  все /Worksheet Options установлены в исходное состояние;
 *  все установки /Layout возвращены к исходному состоянию;
 *  курсор ячейки возвращается в А1;
 *  очищаются /Worksheet Window и /Worksheet Title;
 *  все связи,установленные командой /File Link удаляются;
 *  все защищенные ячейки в ЭТ теряют защиту;
 *  все имена,присвоенные ячейкам или диапазонам,удаляются.
          Установки /Printer Options и /File Utilities  Set-Directory
     не переустанавливаются.

          Если вы вошли в ORACLE RDBMS,то вы продолжаете в нем оставаться.Не
нужно применять команды /Oracle Commit или /Oracle Rollback.(Команда /Oracle
Commit применяется только при входе в систему с другим именем пользователя или
при примененной команде SQL*Calc /Quit.)

                         GКоманда /Worksheet TitleH
          Вы можете сохранить титулы колонок и строк на экране при перемещении
по окнам при помощи команды /Worksheet Title.(Обычно титулы показываются толь-
ко в окне,в котором они были введены.)
          Команда Title позволяет вам закрепить некоторые строки и/или колон-
ки на экране дисплея.Приглашение для этого следующее:
     WORKSHEET TITLE: Horizontal  Vertical  Both  Clear
          При помощи этой команды вы можете установить несколько строк титулов
сверху окна и несколько колонок титулов слева.Если вы выберете GHorizontalH,
то строка,содержащая текущую ячейку и все строки над ней,становятся горизонта-
льными титулами.Подобно этому при выборе GVerticalH колонки станут вертика-
льными титулами.Комбинация GBoth H сочетает действие 2-х предыдущих опций.
      Все колонки и строки,установленные как титулы,будут высвечены на экране.
          Команда  Clear отменяет установку титулов и они будут пока-
     заны только в окне,в котором сформированы.
          Эффект установки строк титула во введении фиксированной информации в
окна; это полезно,но уменьшает полезню площадь экрана,применяемую для прокрут-
ки ячеек.Стандартные границы,обеспечиваемые SQL*Calc,продолжают показывать ка-
кие строки и колонки выводятся на экран.
          Вы не можете переместить текущую ячейку в любую ячейку области титу-
ла; если вы хотите войти в нее,то ее нужно разблокировать при помощи команды
/Worksheet Title Clear.Вам также не разрешено устанавливать все строки и коло-
нки экрана в титулы.

                       GКоманда /Worksheet WindowH
          Команда Window обеспечивает средства для разбиения экрана на 2 час-
ти,каждая из которых показывает разные части ЭТ.(Нет способа просматривать 2
разные ЭТ,можно просматривать только части одной таблицы.) Окно должно иметь
глубину как минимум в 2 строки и шириной не менее 2-х колонок,на экране м.б.
не более 2-х окон.
     Приглашение следующее:
     WORKSHEET WINDOW:  Horizontal  Vertical  Clear  Sync  Unsync
          Выборы Horizontal,Vertical и Clear управляют установкой двойного ок-
на,а оставшаяся пара определяют операции движения текущей ячейки,повторяется
ли это движение в другом окне.
          Если вы выбрали Horizontal,то экран разделится горизонтально на 2
окна с текущей ячейкой в верхнем окне.(Вы не можете разбить экран с текущей
ячейкой в последней строке экрана.)
          Подобно этому при выборе Vertical экран разделяется по вертикали с
текущей ячейкой в левом окне.(Когда текущая ячейка в последней выведенной ко-
лонке,вы не можете создать вертикальное разделение.)
          Кода вы делаете изменения в ячейках одного окна,и эти же ячейки вы-
ведены во втором экране,то они тоже изменятся.
          Clear возвращает SQL*Calc в однооконный режим.
          Как только SQL*Calc попадет в двухоконный режим,то клавиша
     [Window],рассмотренная в главе 4,Присвоение клавиш и  однокла-
     вишные команды,используется для переключения с окна на окно.
          Опция SYNC синхронизирует движение текущих ячеек по 2-м окнам.Таким
образом при перемещении текущей ячейки в одном окне в другом она также переме-
щается,только это можно увидеть при прокрутке первого окна,второе тоже прокру-
тится.
          Опция Unsync снимает эту синхронность.
          И клавиша [Window] и опция Sync игнорируются при работе
     SQL*Calc с одним окном.

                                GКоманды RangeH
          Эти команды влияют на диапазон - набор ячеек,который вы задали.
          Когда вы определяете диапазон,вы сообщаете "включить все эти ячейки
в операцию,которую я выполняю".Диапазон может состоять из одной ячейки,строки
ячеек из одной строки или колонки или прямоугольного блока ячеек.Команды
/Range покрывают набор общих операций над диапазонами.(Вы можете задавать диа-
пазоны в других операциях типа копирования,в операторах SQL SELECT.)
          Вот примеры возможных спецификаций диапазонов:
 с10       единственная ячейка,определенная ее координатами строки
               и колонки.G[Return] Hвоспринимается для текущей ячейки.
 с1.с9     частичная колонка,покрывающая 9 ячеек одной колонки.
 с1.g1     частичная строка,покрывающая 5 ячеек в одной строке.
 с1.g9     диапазон,определенный верхней левой и нижней правой ячейками блока.

                   G[Home][End]  Hвся электроннай таблица.
          Когда вы выбрали команды /Range,появится следующее меню:
     RANGE:  Erase  Name  Sort  Protect  Unprotect

                           GКоманда Range EraseH
          Эта команда стирает содержимое одной ячейки  или  диапазона
     ячеек.Приглашение следующее:
     Enter RANGE to ERASE ([Return] to erase current cell)
(введите диапазон для стирания ([Return] для стирания текущей ячейки))
          Если вы ответите просто нажав клавишу G[Return]H,то стирается те-
кущая ячейка.В противном случае единственная ячейка или диапазон ячеек,который
вы задали (с последующим нажатием G[Return]H) будут стерты.(Смотри примеча-
ния по заданию диапазонов в начале этой главы.)
          Стирание ячейки не только удаляет содержимое данной ячейки из ЭТ,но
также удаляет любые уровни поля (ячейки) установки /Layout,которые вы задали.
          Ячейка м.б. стерта (или одна или часть большого  диа-
     пазона) даже если он используется где-то в формуле.
          Если вы используете  функции  Count или AVG в формуле,то
     стертые ячейки не будут включены в вычисления этой формулы.
          Вы не можете стереть защищенные ячейки.Если вы задали диапазон,то
все защищенные ячейки в нем пропускаются,а все незащищенные стираются.
          Может  потребоваться  удалить всю строку или колонку вместо
     стирания их содержимого.Смотри /Worksheet Delete.

                           GКоманда /Range NameH
          Команда GName Hпозволяет вам присваивать имена ячейкам и диапазо-
нам: имя типа "sales" легче запомнить  чем  диапазон  ячеек.
     Приглашение следующее:
     RANGE NAME:  Create  Delete  List
          Если вы выбрали GCreateH,то появится следующее приглашение:
     Enter NAME (1-15 letters)  (введите имя (1-15 букв))
          Вам нужно ввести имя состоящее из букв и цифр,начинающееся с буквы.
SQL*Calc чувствует разницу между большими и маленькими буквами в именах.Таким
образом "sales","Sales","SALES" - разные имена.Выберите определенную стратегию
в записи имен,чтобы упростить запоминание.Максимальная длина имени - 15 симво-
лов.
     Нажмите G[Return]H в конце имени.
          Следующее приглашение:
     Enter RANGE to assign NAME ([Return] for current cell)
     (введите RANGE для присвоения имени ([Return] для текущей ячейки))
          Вы должны ввести имя ячейки  (например,с7)  или  диапазон
     (например,с7.х9) с последующим нажатием [Return].(Смотри при-
     мечания по заданию диапазонов в начале данной главы.)
          Если вы хотите удалить имя переместитесь к GDelete Hпри помощи
клавиш-стрелок по первому приглашению и затем ввести удаляемое имя.
          Если  вы  ответили G ListH,то программа выведет список всех
     имен,определенных в настоящее время.
          Как только вы поименуете ячейку или диапазон,вы можете ис-
     пользовать ее во многих местах,где нужно ссылаться на них.

          Имя Gcell Hможно использовать разными способами:
 *  как операнд в формуле:
          G+profit*.01H
 *  для ссылки в операторе SQL:
          G$Select*from emp where deptno=&dH
          Вы можете использовать имя Grange Hследующими способами:
 *  как операнд в функции,которая вызывает диапазон:
          G+SUM(expenses)H
 *  для ссылки на список значений в ячейке SQL:
          G$insert into emp values(&record1)H
          SQL*Calc всегда изменяет ячейки,ссылаемые именами диапазонов при
вводе и удалении строк и колонок или их перемещении (при помощи команд /Work-
sheet или в диапазоне INTO для переполнения или недокомплекта).На одни и те же
ячейки всегда ссылаются по имени.
          Когда вы запрашиваете колонку или строку для удаления,SQL*Calc не
позволит вам удалить их,если в них есть поименованные ячейки.
          Если формула ссылается на имя диапазона,которое не существует,то при
работе формулы выводится сообщение ERR.Помните,что вы должны использовать пра-
вильную комбинацию больших и маленьких букв.если вы поименовали диапазон
"SALES" и попросите SQL*Calc использовать в формуле диапазон "sales",то полу-
чите ошибку - ERR.

                             GКоманда RANGE SORTH
          Команда G Sort Hс ее опциями позволяет вам упорядочить по алфавиту
все строки в диапазоне в соответствии с текстом в одной из колонок.А также мо-
жно расположить строки в порядке возрастания или убывания числовых значений в
заданной колонке.(В пособии вы увидели как рассортировать ЭТ по алфавиту имен
продавцов и затем по объемам продаж.) Колонки сортировать нельзя.Приглашение
следующее:
     Enter RANGE to SORT  ([Return] for entire sheet)
     (введите диапазон для сортировки ([Return] для всей ЭТ)
          Задайте диапазон или нажмите [Return] для сортировки всей ЭТ.(Смотри
примечания по заданию диапазона в начале данной главы.)
          Если диапазон содержит ячейку с оператором SQL,то появится
     следующее приглашение:
     RANGE SORT: SQL statements in cells within range.Continue? No Yes
          Когда каждый оператор SQL в диапазоне извлекает только одну строку
данных и помещает в ЭТ так,что SQL-ячейка является первой ячейкой,хранящей ст-
року данных,которые вы выбираете,то вы можете без опасений ответить Yes - Да.
          Если вы ответили Yes и диапазон содержит SQL-ячейку извлекающую нес-
колько строк данных,то вы не сможете переисполнить ячейку правильно,поскольку
диапазон INTO будет нарушен,
          Следующее приглашение:
     Enter  column  letter  to  use as SORT key ([Return] for current column)
     (введите  букву  колонки,используемой  как   ключ   сортировки
     ([Return] для текущей колонки))
          Задайте колонку,содержащую данные,по которым нужно провести сортиро-
вку или нажмите G[Return] Hдля использования текущей колонки в качестве клю-
ча.Для обозначения колонки А приемлемы и GА Hи GА1H.Вы получите сообщение
об ошибке,если колонка вне сортируемого диапазона.
          Последнее приглашение:
     RANGE SORT: Ascending  Descending
          Выбирайте GAscendingH для сортировки в порядке возрастания данных
в колонке-ключе.Это значит,что текст будет построен в алфавитном порядке,а чи-
сла в порядке возрастания.
          Пустые ячейки сортируются последними,то есть после  других
     рассортированных строк в возрастающем порядке.
          Текст  сортируется  по  алфавиту и формулы-текст трактуются
     как текст.Текст сортируется в следующем порядке:
          Пробел (как первый символ текста)
          !"#$%&'()*+,-./
          0 - 9 (цифры в тексте)
          :;<=>?@
          A - Z
          [\]^_`
          a - z
          {|}
          Числа сортируются от младшего к старшему.Ячейки,содержащие N/A,ERR,
**SQL**,0,-0 трактуются как одинаковые (то есть как 0).
          Для сортировки в убывающем порядке выбирайте GDescendingH.В
     этом  случае числа сортируются первыми от старшего к младшему,а
     затем текст в обратном порядке (от Z до А).
          Единственно ссылки на ячейки изменяются,когда сортируются строки ди-
апазона,это те ссылки,которые указывают на ячейки тоже внутри этого диапазона.
Они изменяются так что будут ссылки на те же самые ячейки.
          Любые ссылки на ячейки из сортируемых ячеек  вне  диапазона
     сортировки не изменяются.

                         GКоманда /Range ProtectH
          Команда Protect позволяет вам защитить ячейку или их диапазон.Когда
вы первый раз запускаете SQL*Calc,все ячейки в ЭТ не защищены.Вы можете вводи-
ть в них данные,стирать их и так далее.Когда вы выбрали команду  Protect,поя-
вится приглашение:
     Enter  RANGE to PROTECT ([Return] for current cell)
     (введите диапазон для защиты (нажмите [Return] для текущей ячейки))
          Если вы нажмете G[Return]H,то станет защищенной только текущая
ячейка,в нее больше нельзя вводить данные,стирать ее и так далее.Если вы зада-
ли диапазон,то приглашение изменится.(Смотри примечания по заданию диапазона в
начале этой главы.) Вы увидите следующее:
     RANGE PROTECT:  All-cells formulas/text only
          Изберите GAll-cells Hи нажмитеG [Return]H для защиты все ячеек,
содержащих информацию - данные,формулы,операторы SQL - в заданном диапазоне.
Для защиты только ячеек с формулами или текстом нужно выбрать GFormulas/text
onlyH.(SQL-ячейки считаются как формулы в этой процедуре и они защищаются
вместе с формулами и текстом.) Это полезно когда вы хотите сохранить формулы,
SQL-ячейки и титулы,но разрешить пользователю занести новые данные.
          Как только вы получите защищенный диапазон,вы увидите букву GPH в
строке статуса при перемещении на данную ячейку:
                                                GС7(Text,P)H.
          Теперь вы ограничены в действиях по отношению к этой  ячей-
     ке.Вот ограничения:
 *  вы не можете вводить в нее данные или стирать их.
 *  строку или колонку с защищенной ячейкой нельзя удалить.
 *  вы не можете извлечь данные из другого файла в защищенную
        ячейку  при помощи опции /File Retrieve или связать данные из
        другой  ЭТ с ней при помощи /File Links.
 *  вы не можете поместить в нее данные при помощи оператора SQL SELECT.
          Если вы имеете защищенную ячейку SQL,вы можете ее исполнить вызвав
команду /Oracle Execute или нажав клавишу G[Query]H.Клауза INTO,которая со-
держит защищенную ячейку,не допустит переисполнение ячейки SQL.
Нельзя защитить пустую ячейку.

                          GКоманда /Range UnprotectH
          Эта команда отменяет действие команды Protect.Приглашение следующее:
     Enter RANGE to UNPROTECT ([Return] to unprotect current cell)
     (введите диапазон для снятия защиты ([Return] для текущей ячейки))
          Нажмите G[Return] Hдля снятия защиты с текущей ячейки.В про-
     тивном  случае задайте диапазон с которого вы хотите снять защи-
     ту.(Смотри примечания по заданию диапазона в начале этой главы.)
          Теперь вы можете изменять все ячейки,с которых сняли защиту.

                               GКоманда  CopyH
          Используя команду /Copy вы можете копировать одну или  нес-
     колько ячеек несколькими способами.Сперва появится первое приглашение:
   FROM range? ([Return] for current cell) Adjust lower-case cell references
     (из диапазона? ([Return] для текущей ячейки) Изменить ссылки  на
     ячейки маленькими буквами)
          Вы ответите введя или имя ячейки или диапазон ячеек для диапазона
FROM.Для примера предположим,что вы ввели b10 как диапазон FROM.Тогда вы уви-
дите приглашение:
   TO range? ([Return] for current cell) Adjust lower-case cell references
     (В диапазон? ([Return] для текущей ячейки)  изменить  ссылки  на
     ячейки маленькими буквами)
          Если вы введете с57,то ваша запись станет такой:
                                                  Gb10,c57H
          SQL*Calc введет запятую между диапазонами ИЗ и В.Вам нужно заканчи-
вать каждую строку ввода нажатием клавиши G [Return]H.
     (Смотри примечания по заданию диапазона в начале этой главы.)
          Текущая опция изменения /Worksheet ссылки на ячейку показана в стро-
ке приглашения.(Если вам нужно изменить эту опцию,то нужно вызвать команду мо-
дификации /Worksheet Options.) Ссылки на ячейки в ячейкках SQL изменятся так
же как в формулах.Ссылки на поименованные ячейки или диапазоны не изменяются.
          Смотри раздел этой главы /Worksheet Options,где дано описание изме-
нения ссылок на ячейку во время копирования формул (под управлением опции
Adjustment).
          Когда вы копируете данные и формулы в другое место ЭТ,SQL*Calc авто-
матически перевычисляет все значения,показанные в ЭТ независимо от установки
/Worksheet Options.
          Когда вы копируете ячейку SQL,она не перевычисляется автоматически:
после копирования вы увидите на ячейке цели надпись G**Copied**H.Для перевы-
числения значений в этих ячейках нажмите  G[*Coied*]H.
          Копирование ячейки SQL SELECT удалит клаузу INTO.Когда вы первый раз
ввели оператор SQL SELECT,SQL*Calc обеспечивает автоматический диапазон INTO
если извлекается несколько строк данных.Теперь после выполнения скопированого
оператора вы увидите некоторый вид приглашения для извлечения нескольких строк
данных.
       Если первое,что вы ввели при ответе на спецификацию FROM -G[Return]H,
вы сообщаете SQL*Calc,что хотите скопировать содержимое текущей ячейки.
          Простейшая  операция  /Copy - копирование содержимого одной
     ячейки в другую.И FROM и TO - это имена ячеек.
            Пример:  Gb36,gh893 Hкопирует содержимое b36 в gh893.
          Когда вы копируете из поименованной ячейки в диапазон,то SQL*Calc
помещает копии содержимого исходной ячейки во все ячейки диапазона.Каждая яче-
йка цели будет иметь одно и тоже содержание.
            Пример:  Ga1,a5.g10  Hсодержимое ячейки а1 будет во всех
                     ячейках в диапазоне а5.g10.
          Если From - диапазон,а TO - имя ячейки,то  этот  диапазон
     копируется в диапазон,верхний левый угол которого - ячейка TO.
            Пример:  Gb36.g14,j14 Hздесь копируются строк и колонки в диапа-
                  зоне b36.g14 в блок с верхней левой координатой j14.
          Когда вы захотите,чтобы один диапазон ячеек содержал те же значения,
что другой,то проще всего не копировать формулы,а сослаться на значения ячеек.
Например,если вы хотите иметь значения ячеек А1 -А10 в колонке С и А1 имеет
формулу +b1*1.1,только установите ссылку на А1 в С1 введя +а1 и затем скопиру-
йте ссылки вниз по колонке до с19.(Это может показаться сложным,но дает возмо-
жность уловить суть копирования.)
          Эффект последнего хода такой же как если бы SQL*Calc имела метод по
которому вы сохраняли постоянными ссылки на ячейки и большими и маленькими бу-
квами.(Такой команды или опции нет,но описанный прием позволяет это обойти.)
          По способу изменения формулы во время копирования вы можете произво-
дить сложные вещи при работе с этой командой.Пособие покажет вам некоторые
методы копирования.

                             GКоманда LayoutH
       Команда Layout используется для изменения способов,по которым выводится
содержимое ячеек.После выбора команды G/LayoutH появится следующее меню:
     LAYOUT:  Column  Horiz-Row  Field  Worksheet  Modify-Styles
          Первые 4 опции позволяют вам выбрать вид для изменения.Например,вы-
бирайте Field,когда вы хотите измениь формат одной ячейки.(Пятый выбор показан
ниже.) После выбора одной из этих опций вы получите следующее приглашение:
     LAYOUT: Width Style Align Money Int Exp Bar  General Decimal Reset
          Вы можете выбрать одну из требуемых опций путем использования кла-
виш-стрелок для высвечивания нужной опции и нажав G[Return]H или путем ввода
первой буквы этой опции .
          6 опций GMoney,Int,Exp,Bar,General,Style H определяют как вводить
числа в выводимых на экран ячейках.Другие опции воздействуют на другие элеме-
нты ЭТ: GAlign Hпозвляет вам выравнивать текст или числа с одной или другой
стороны колонки; GWidth H- изменять ширину колонки; GDecimal H устанавли-
вает числа в 10-ные и G Reset Hвозвращает опции в первоначальное состояние.
          SQL*Calc выводит на экран текущие опции в строке статуса.Если вы не
хотите их изменять,то нажмите G[Return]H.Вот пример:
     Format: Money Align: Text-Right,Number-Right Width: 10 Decimal: 3

                             GУстановка форматаH
          Теперь давайте посмотрим как устанавливать формат более детально.Вам
не нужно изменять опции формата пока все установки по умолчанию соответствуют
вашим требованиям.Например,если вам нужно колонку шире 8 символов,то не нужно
возиться с шириной колонки.Вот спецификация формата по умолчанию:
       GОбщий форматH для представления чисел (обычная 10-ная форма с плава-
ющей 10-ной точкой и без вывода на экран хвостовых нулей если она укладывается
в заданную ширину колонки; в противном случае SQL*Calc пытается использовать
экспоненциальную форму.)
       GВыравнивание чисел справаH    выравнивание  всех чисел с правой
       стороны  колонки.
       GВыравнивание текста слеваH   выравнивание текста от начала с  ле-
       вой стороны  колонки.
       GШирина колонкиH  8 символов.
          Всякий раз как SQL*Calc показывает число в ячейке,ей нужно следующая
информация: формат,выравнивание,ширина и количество 10-ных позиций.
          Вы можете применить команды,устанавливающие формат и выравнивание
чисел,вводимых в ячейки для 4-х областей: ячейка,строка или колонка,частью ко-
торой является ячейка или вся ЭТ.
          Вы можете управлять шириной и 10-ной позицией в 2-х местах: колонка,
частью которой является ячейка,или ЭТ.
          Код формата управляет и выравниванием текста и числе справа
     или слева от колонки.
          Давайте посмотрим на строку приглашения:
     LAYOUT: Width Style Align Money Int Exp Bar  General Decimal Reset
          Следующие опции определяют,как выводить на экран числа:
          Вы  выбираете G Width Hдля настройки ширины колонки.Когда вы
     ее выбрали,то вам будет предложено ввести ширину:
     Enter column WIDTH (1 - 74)
          Помните,что вы можете установить ширину колонки для ЭТ в целом (все
колонки будут иметь одинаковую ширину) или для одной колонки.Если вы попытае-
тесь выбрать опцию Ширина при установке формата Cell или Horizontal-Row,то ус-
лышите звуковой сигнал и увидите на экране сообщение о том,что эта опция здесь
не приемлема и вы возвратитесь в текущее меню.
     GПримечание: Hкогда запись слишком велика для ячейки,она будет урезана
слева при установке выравнивания справа.При выравнивании текста слева он будет
накладываться на соседние ячейки при условии,что они пусты.Когда число слишком
велико для размещения в ячейке SQL*Calc поместит его только при условии,что
оно не потеряет значащей информации.Значащая информация означает,все цифры
слева от 10-ной точки плюс столько цифр справа,сколько требуется для 10-ого
кода,описанного ниже.Кроме того,для научной нотации экспонента должна помести-
ться в ширину дисплея.
          Если SQL*Calc определяет,что число нельзя показать в ячейке без по-
тери значащей информации,она заполняет ячейку дисплея знаком ">" (больше чем).
Число,которое вы ввели,форматируется в соответствии с опцией GStyleH,которую
вы предварительно установили при помощи команды /Layout Modify-Styles.Когда вы
выбрали эту опцию,вы увидите новое прглашение:
     LAYOUT STYLE: Enter number of user-defined style (1 - 8)
     (стиль формата: введите N выбранного пользователем стиля (1 - 8))
          N,который вы введете,- это N колонки,показанной в сетке,выведенной
на экране,когда вы выполняли команду /Layout Modify-Styles.Каждая колонка от 1
до 8 содержит детали формата,который вы спроектировали для своих целей.(Эта
команда объясняется позже.)
          Опция G Align Hопределяет размещение чисел и текста в ячейке.
     Когда вы выбрали эту опцию,увидите следующее меню:
     LAYOUT ALIGN:  1) Text-Left  2) Text-Right  3) Number-Left
                    4) Number-Right
          Вы можете выбрать при помощи перемещения курсора или  ввода
     числа,а затем нажатия G[Return]H.Вот каково влияние этих выборов:
     GText-Left     Hэта опция выравнивает текст слева от колонки.(Тако-
                   ва первоначальная установка при старте SQL*Calc.)
     GText-RightH    эта опция выравнивает текст справа от колонки.
     GNumber-LeftH   эта опция выравнивает числа слева от колонки.
     GNumber-RightH  эта опция выравнивает числа справа от колонки.(На-
                   чальная установка.)

          Когда вы выбрали опцию GMoneyH,то число,которое вы ввели корректи-
руется на 0.005 и выводится с двумя 10-ми позициями.Знак $ и запятая не выво-
дятся на экран.Если вы хотите их вывести,то используйте выбор Modify-Styles.
          Целое  - G Int H - число округляется на .5 и выводится только
     целая часть.
          Экспонента - GExp H- эта опция выводит на экран число в  экс-
     поненциальной форме; например,1.96Е2 вместо  196.
          Опция GBar Hберет целую часть введенного вами числа и генерирует
линию из соответствующего ему числа звездочек.Эта возможность полезна для ге-
нерации графиков,но зачастую нужно масштабировать числа в приемлемые длины ко-
лонок из звездочек.
          В формате G General Hчисло,которое вы вводите,выводится на экран в
нормальном 10-ном виде (с 10-ной плавающей точкой без замыкающих нулей),если
оно помещается в заданную ширину колонки.В противном случае SQL*Calc пытается
использовать экспоненциальную форму.(Таков режим по умолчанию пока вы не изме-
ните одну из следующих опций в данном разделе.)
          Опция G Decimal Hпозволяет вам устанавливать количество
     10-ных мест,в которых вы будете вести вычисления и  выводить  на
     экран.Вот приглашение для этого выбора:
     Enter number of DECIMAL places (1 - 12)
          Вы можете установить эту опцию для всей ЭТ или для отдельной колон-
ки.Если вы захотите установить эту опцию для одной ячейки,то вам будет отказа-
но и вы возвратитесь в текущее меню.
          GResetH.Эта опция приказывает SQL*Calc использовать высший уровень
присвоения при форматировании.(Это значит,что формат ячейки имеет высший прио-
ритет над форматами строк и колонок,которые в свою очередь имеют приоритет над
форматом ЭТ.) Если все 4 уровня установлены в исходные значения,то работают
опции General format,Text-Left,Number-Right,Width 8.
          Теперь вы можете просмотреть полный  код  формата,который
     должен содержать 4 компоненты:
       формат  для  числовых  записей (GMoney,Int,Exp,Bar,General,H
       GStyleH)
       выравнивание чисел (GNumber-Right,Number-LeftH)
       выравнивание текста (GText-Right,Text-LeftH)
       10-ная установка  (G1 - 12H)
          Установка ширины будет изменена только если формат,который
     вы запросили,не вмещается в 8 символов по умолчанию.

                       GКоманда /Layout Modify-StylesH
          Команда Modify-Styles позволяет вам создавать форматы,управляющие
выводом на экран числовых значений.Когда вы выбрали опцию /Layout G Style H
из меню,показанного в предыдущем разделе,номер,который вы ввели,относится к
стилю,установленному для этой команды.
          Когда вы применяете команду GModify-StylesH,в окне экрана будет
выведена сетка из 8-ми стилей формата,определенных пользователем.Каждая колон-
ка определяет конкретный формат для вводимой чифры.Вот что вы увидите:

     GРисунок 6-2H
      |                                                              |
      |     LAYOUT STYLE NUMBERS:  1 2 3 4 5 6 7 8                   |
      |  Insert commas             Y Y Y Y N N N N                   |
      |  Floating $                Y Y N N N N N N                   |
      |  () for negative           Y N Y N N N N N                   |
      |  CR for negative           N Y N Y N N N N                   |
      |  Blank when  0             Y Y Y Y N N N N                   |
      |  Round                     Y Y Y Y N N N N                   |
      |  No.of decimal places      2 2 2 2 D D D D                   |
      |  Scale-down factor         0 0 0 0 0 0 0 0                   |

          Вы можете использовать клавиши-стрелки для  перемещения  по
     этой  сетке  и  вводить GYH илиG NH (для Да или Нет) для активизации
     или деактивизации выбранной возможности форматирования.
          Для установки количества десятичных мест и масштаба введите нужную
цифру.D означает,что SQL*Calc должна использовать столько 10-ных цифр,сколько
необходимо.
Масштаб - это степень 10 на которую нужно разделить значения перед их выводом.

                               GКоманды FileH
          Эти команды /File позволяют вам просматривать и извлекать ЭТ,храни-
мые в файлах вашего компьютера.Они позволяют также сохранять ЭТ,с которыми вы
работали и связывать их между собой.Когда вы выбрали команды G/FileH,появит-
ся следующее меню:
     FILE:  Retrieve  Save  Link  Merge  Utilities
          Во всех командах /File при задании имени файла нужно его правильно
выбрать.Для IBM PC,работающего под управлением OC PC-DOS,правильное имя файла
имеет от одного до 8 символов и начинается с буквы,оно может иметь расшинение
из 3 символов через точку.Рекомендуется в именах использовать только буквы и
цифры.(Для других OC смотри соответствующие пособия.)

                         GКоманда /File RetrieveH
          Команда GRetrieve H используется для загрузки всего файла ЭТ в па-
мять.Когда вы выбрали эту команду,появится следующее приглашение:
     Enter worksheet filename to RETRIEVE
          Введите имя файла и нажмите G[Return]H.Если вы только нажали
G[Return] Hбез имени файла,то SQL*Calc возьмет последнее имя файла,заданное
в командах Retrieve или Save.Имя файла выводится в строке статуса.
          (Если  вы не можете вспомнить имена ваших файлов,то нажмите клавиши
G[Name]--[F3] Hна IBM PC,чтобы увидеть список ваших файлов.)
          После  ввода  правильного  имени файла (смотри примечание в
     начале этого раздела) будет выведено следующее приглашение:
     FILE RETRIEVE:  ALL  Cells-only  Options-only
          Если вы выбрали ALL,SQL*Calc загрузит все из файла включая
     опции форматирования и позиционирования.
          Вам не нужно очищать ЭТ перед извлечением файла; SQL*Calc автомати-
чески очистит ее перед загрузкой новой ЭТ.(Если вы хотите наложить вторую ЭТ
на текущую,примените команду /File Merge - смотри ниже.)
          Извлечение ЭТ немедленно извлечет все данные из ЭТ,с которыми она
постоянно связана (при помощи команды /File Link и опции Permanent).
          Если вы выбрали GCells-only HилиG Options-onlyH,то только соде-
ржимое ячеек или установки опций будут,соответственно,выбраны.Когда выбрана
GOptions-onlyH,загрузится следующее:
 *  установки /Layout для ЭТ,всех колонок и всех строк,но не для конкретных
    ячеек.
 *  все установки /Worksheet Options.
 *  место и идентификация текущей ячейки.
 *  вся индикация разбивки экрана на 2 окна при помощи команды
        /Worksheet Window.
 *  любые строки и/или колонки,которые вы установили как титулы
       при помощи команды /Worksheet Tiltle.
 *  любые названные вами диапазоны при помощи команды /Range Name Create.
 *  любые другие ЭТ,которые вы связали с текущей ЭТй при помощи команды /File
    Link.
          GOptions-only Hне загружает:
 *  установки /Layout для конкретных ячеек.
 *  содержимое и выводимые значения ячеек включая текст,числа,
        формулы и SQL-ячейки.
 *  статус защиты для каждой ячейки.
 *  установки переполнения и недокомплекта для операторов SQL
        SELECT,созданные путем использования команд /Oracle Options
        Underflow и  /Oracle Options Overflow.

                             GКоманда  /File MergeH
          Если вы хотите извлечь 2-ю ЭТ при работе с первой,используйте коман-
ду GMergeH.Приглашения и опции такие же как для команды /File Retrieve.
SQL*Calc перекрывает новой ЭТй существую щую.Результирующий экран выглядит как
будто вы ввели записи из новой таблицы в старую.Таким образом:
 *  если новая ЭТ имеет значение в конкретной ячейке,то результирующая таблица
    будет иметь это значение в этой ячейке.
 *  если новая ЭТ не имеет значения в какой-то ячейке то результирующая табли-
    ца покажет,что было в старой.
          Новая ЭТ перекрывает существующую в целом; она не извлекается в су-
ществующую начиная с текущего положения ячейки.
          Иногда удобно иметь перекрывающиеся ЭТ.Например,вы можете иметь
'главную' и 'необработанную' ЭТ.Главная таблица м.б. очень большой,содержать
много вычислений и не содержать необработанных данных,при этом меняться доста-
точно редко.Необработанная ЭТ может использоваться для периодического ввода
данных.В таком случае вы можете хранить их отдельно и сэкономить место на дис-
ках,поскольку необработанная таблица невелика.При этом можно периодически нак-
ладывать необработанную таблицу на главную и проводить весь комплекс вычисле-
ний для новых данных.

                           GКоманда  /File SaveH
          Команда GSave Hсохраняет текущую ЭТ в дисковом файле.Первое приг-
лашение следующее:
     Enter name of worksheet to SAVE to FILE
     (введите имя ЭТ для сохранения в файл)
          Ответьте,введя имя файла,в который SQL*Calc должна записать информа-
цию ЭТ.Вам необходимо задать правильное имя.Для IBM PC,работающего под управ-
лением OC PC-DOS,правильное имя файла имеет от одного до 8 символов и начина-
ется с буквы,оно может иметь расширение из 3 символов через точку.Рекоменду-
ется в именах использовать только буквы и цифры.(Для других OC смотри соответ-
ствующие пособия.)
          SQL*Calc спросит затем,какую часть электронной  таблицы  вы
     хотите сохранить:
             FILE SAVE:  ALL  Value-only
          Если вы выбрали GALLH,то все сохранится - и содержимое всех ячеек
ЭТ (включая формулы и операторы SQL) и все установки,которые вы сделали для
управления выводом на экран и вычислением значений.
          Если вы выбрали GValues-onlyH,то SQL*Calc сохранит ячейки текста и
числовых значений.Таким образом,для ячейки,содержащей формулу или оператор SQL
SELECT,сохраняется текущее значени формулы.
          Если имя файла уже существует,то SQL*Calc спросит,хотите ли вы пере-
писать этот файл.Вам нужно ответить GYesH,что согласны или GNoH,если хоти-
те запустить операцию сохранения снова с другим именем файла.
          Имя файла,которое вы задали,д.б. с именем каталога,заданным командой
/File Utilities Set-Directory.Все файлы ЭТ принимают автоматическое расширение
.CAL.(Вам не нужно вводить расширение когда вы извлекаете файл.)
          Когда ЭТ сохраняется в файле,сохраняется и вся информация,небходимая
для работы после выполнения команды /File Retrieve:
 *  содержимое и выводимые на экран тексты,числа,формулы и SQL-ячейки.
 *  статус защиты каждой ячейки.
 *  установки переполнения и недокомплекта для операторов SQL SELECT.(они ус-
    тановлены при помощи команд /Oracle Options Underflow и /Oracle Options
    Overflow.)
 *  установки  /Layout  для ЭТ,колонок,строк и ячеек.
 *  идентификатор и расположение текущей ячейки.
 *  индикация о разбивке экрана на 2 окна путем использования
        команды /Worksheet Window.
 *  любые  строки и/или колонки,которые вы установили как титулы
        при помощи команды /Worksheet Title.
 *  любые другие ЭТ,связанные с текущей при помощи команд /File Link-Worksheet.
 *  любые диапазоны,которые вы поименовали при помощи команды
    /Range Name Create.
          Команда /File Save-Worksheet НЕ сохраняет следующее:
 *  установку /Printer Configure.
 *  идентификацию пользователя ORACLE RDBMS,которую вы использова-
        ли при входе в БД.
 *  установки /File Utilities Set-Directory.
          Файл,произведенныйG Hкомандой GSaveH,является формой,подхо-
     дящей для перезагрузки через G Retrieve.H

                           GКоманда /File LinkH
          Также как оператор SQL SELECT позволяет вам получать данные из ORA-
CLE RDBMS,команда GLink Hобеспечивает вам выборку данных из других файлов
ЭТ.Вы можете извлечь данные из стольких ЭТ,сколько вам потребуется.При выборе
Link появится следующее приглашение:
     FILE LINK:  Create  Delete  List
          Для Gсоздания Hсвязи нужно выбрать опцию  Create  и  появится
     следующее приглашение:
     Enter worksheet FILE name to LINK to
     (введите имя файла ЭТ,который нужно привязать)
          Введите  имя файла ЭТ,с которым вы хотите установить связь.Затем по-
явится следующее сообщение:
     Enter name of named cell to be LINKED to this worksheet file
     (введите  имя  поименованной  ячейки,которая будет привязана к этой ЭТ)
        Теперь введите имя ячейки или диапазона в данном файле,который вы хо-
тите ввести в текущую ЭТ в текущее положение ячейки.Команда Link требует имени
действительной ячейки или диапазона (например,Sales),а не координаты ячейки
или диапазона.После идентификации ячейки появится дальнейшее приглашение:
     FILE LINK: Permanent? Yes No
          Если вы ответите No - Нет - SQL*CALC немедленно попытается передать
заданную ячейку или диапазон и не сохранит никаких записей по установке связи.
Вы просто заказали набор данных из другой ЭТ.
          Если вы ответите Yes - Да - SQL*CALC установит постоянную связь с
текущей ЭТй.Это значит,что при каждой перезагрузке ЭТ SQL*CALC автоматически
подаст связанную ячейку или диапазон из другого файла ЭТ.(Информация о связи
хранится в ячейке,в которой сделана соответствующая запись,такая же примерно
как формула или оператор SQL.) В данном случае вот последнее приглашение:
     FILE LINK: Load now?  Yes  No
          Если вы ответите Yes - Да - то SQL*CALC попытается выполнить связь
немедленно.В противном случае она только запомнит эту связь и даст возможность
выполнить вам подачу шнформации в любое время при выводе связей на экран при
помощи команды /File Link List  как это будет описано ниже.
          Для удаления - Delete - связи переместите курсор в ячейку,содержащую
связь,которую вам нужно удалить и выбрать опцию Delete.Если ячейка не содержит
информации о связи,то появится сообщение об ошибке.
          Если ячейка хранит информацию о связи,то она будет удалена
     и появится соответствующее сообщение.
          Для демонстрации всех связей нужно выбрать опцию List.Если имеется
больше связей,чем может поместиться на экране,то SQL*CALC делает паузу после
каждого заполнения экрана.Нажмите любую клавишу кроме G[Escape]H для прос-
мотра следующей страницы.Если какая-то связанная ячейка еще не загружена,то
вы увидите следующее приглашение:
     FILE LINK: Load unresolved links?  No  Yes
          Ответьте Yes - Да - если вы хотите загрузить информацию.

                        GКоманда /File UtilitiesH
          Команда Utilities позволяет вам выполнять операции,которые в против-
ном случае требовали бы выхода из SQL*CALC,чтобы войти в OC./File Utilities
обеспечивает доступ к файлам вашей OC.После выбора этой опции появится следую-
щее приглашение:
     FILE UTILITIES: List  Copy  Erase  Set-Directory
          Выбирайте List,если вам нужно получить полный или частичный
     список файлов вашего текущего каталога.
          Для создания копии файла нужно выбрать Copy.Тогда появится
следующее приглашение:
     Enter FROM,TO filenames
          Введите  правильныи имена файлов,ИЗ которого копировать и В
     который копировать.Вам не нужны образцы для имен этих файлов.
          Если файл,в который вы собрались писать,уже существует,то SQL*CALC
попросит подтвердить ваше желание заменить его содержимое.
          Для удаления одного или нескольких файлов  примените  опцию
     Erase.Тогда появится следующее приглашение:
     Enter filename or file pattern of FILE(S) to ERASE
     (введите имя файла или перечень файлов для удаления)
          Введите правильное имя файла или паречень имен группы файлов.Для IBM
PC,работающего под управлением ОС PC-DOS,правильное имя файла имеет от одного
до 8 символов и начинается с буквы,оно может иметь расширение из 3 символов
через точку.Рекомендуется в именах использовать только буквы и цифры.(Для дру-
гих OC смотри соответствующие пособия.)
          В некоторых OC Erase эквивалентна Delete.
          Для изменения имени каталога нужно выбрать опцию Set-Directory.Вам
всегда нужно сопровождать имя файла именем вашего каталога (для IBM PC нужно
иметь и идентификатор драйвера).Эта команда не переместит вас в другой каталог!
          Строка статуса покажет текущий каталог.Вы можете ввести имя каталога
для изменения расположения дисковода и/или каталога,куда вы хотите обратиться
и сохранить файлы текущей ЭТ.(Обратитесь к вашим пособиям по OC для дополните-
льной информации.)

                             GКоманда PRINTH
          После выбора команды /Print появится следующее меню:
     PRINT:  Printer  File  Options
          Команда /Print печатает файлы SQL*CALC прямо на принтере или переда-
ет их на диск,чтобы распечатать их позже.Используя /Print Options вы можете
настроить ваш принтер на конкретные распечатки.
          Значения ячеек печатаемой ЭТ будут такими же как на экране.
          При установке опций /Print одна из них - количество символов в стро-
ке.Если ЭТ или экран,которые вы хотите распечатать,содержат больше символов,
чем может поместиться на странице при данной длине,то SQL*CALC автоматически
раэобъет строку на 2.Вторая секция строк печатается или сохраняется по оконча-
нии печати первой секции.Вы можете печатать информацию в одной широкой форме.

                           GПринтер или опции FileH
          При выборе Printer SQL*CALC направит вывод на ваш принтер.
          Убедитесь,что вы подключили принтер к компьютеру и он  на-
     ходится в рабочем состоянии.
          Если вы работаете на IBM PC в OC PC-DOS,а принтер не подключен к ко-
мпьютеру или не включен,то на экране будет периодически появляться сообщение
"WAIT",но,конечно никакой печати не будет.Для печати принтер нужно включить.
При этом пойдет распечатка и вы будете оставаться в SQL*CALC.
          Если принтер не подключен,то SQL*CALC будет ждать подключения и нет
другого способа сохранить данные,кроме подключения принтера.Поэтому очень важ-
но проверить наличие принтера.
          Не обязательно держать принтер включенным при работе.Кроме того мож-
но сохранить подготовленную информацию в файле для позднейшей распечатки.При
выборе File появится следующее  приглашение:
     Enter filename to PRINT to
          Введите имя файла и нажмите G[Return]H.Если файл уже существует,то
вас попросят подтвердить его перезапись.Ответьте Yes -Да - если это нужно сде-
лать или No - Нет.Все эти файлы автоматически получают расширение .PRN.
          После определения куда вы хотите вывести информацию,на принтер или в
файл,SQL*CALC спросит вас нужно ли печатать только экран или набор ячеек:
     PRINT:  Range  Screen
          Если вы выбрали Screen,то SQL*CALC пошлет образ экрана на печать или
в файл.При распечатке вы получите все,что есть на экране за исключением строк
статуса,приглашения и ввода.Если вам не нужно выводить границы строк и коло-
нок,то сделайте соответствующие исправления в /Worksheet Options.
          При выборе Range  для  печати  определенного  блока  данных
     SQL*CALC выведет следующее приглашение:
     Enter RANGE to PRINT ([Return] for entire worksheet)
        Ответьте на это приглашение введя диапазон ячеек,то есть левую верхнюю
и нижнюю правую ячейки,или просто [Return] для сообщения о распечатке всей ЭТ.
          Если вы хотите распечатать все,то SQL*CALC распечатает только ячейки
в блоке,заданном его координатами.Если ЭТ имеет повторяющийся текст типа общей
строки,выходящей за пределы правой границы,то SQL*CALC ее проигнорирует.
          При печати диапазона появится следующее  приглашение  после
     ввода диапазона:
     PRINT BORDERS:  None  Row  Column  Both
          Вы можете выбрать одну из этих опций,чтобы задать,какие границы нуж-
но вывести на печать.Затем SQL*CALC пригласит:
     Enter number of rows to PRINT as page title ([Return] for none)
     (введите число строк,которые нужно печатать как титулы страницы
     ([Return] если не нужно))
          Нажмите G[Return] Hпри отсутствии строк титулов.В  противном слу-
чае нужно ввести их количество и потом [Return].Например,если вы печатаете
блок а3.е97 и задали 4 строки титула,то блок а3.е6 будет появляться в начале
каждой страницы.
          Если вы напечатали и границу строк и строки титула,то гра-
     ница строк не будет напечатана для титула.
          В этом месте при выборе Printer начнется распечатка.(Помните,что
принтер д.б. подключен и в работе,иначе вы можете потерять свои данные.) При
выборе опции Filе SQL*CALC  пошлет информацию в дисковый файл.
          При передаче вывода в файл SQL*CALC для каждой строки генерирует те-
кстовую строку.Каждая строка заканчивается возвратом каретки и переводом стро-
ки.Большинство редакторов и символьных процессоров могут работать с выходным
файлом SQL*CALC.

                         GКоманда  /Print OptionsH
     Команда Options обеспечивает формат распечатки ЭТ.После выбора Options
область окна ЭТ заменяется следующим меню:

     GРисунок 6-3H
     |    PRINTER OPTIONS                                            |
     | -> Characters per line: 80                                    |
     |    Lines per page: 66                                         |
     |    Top Margin lines: 2                                        |
     |    Bottom margin lines: 2                                     |
     |    Use form feeds (Press SPACE to change): Yes                |
     |    Printer initialization sequence (Type ^ to indicate CTRL): |
     |    Printer termination sequence (Type ^ to indicate CTRL):    |
     |    Return to the worksheet (Press [Return])                   |

          Строка приглашения выводится следующая:
    Move pointer with arrow keys.Type new setting.Press [Return] on last line.
     (перемещайте указатель при помощи клавиш-стрелок.Введите  новую
     установку.Нажмите [Return] в последней строке)
          Для перемещения курсора используйте клавиши вертикальных стрелок и
подведите его к опции,котрую вы хотите изменить,введите соответствующую инфор-
мацию и нажмите G [Return]H.Например,для изменения числа строк в странице на
50,нажмите стрелку вниз один раз и введите 50 с нажатием G[Return]H.
          Последовательности инициализации и завершения - это специальные сиг-
налы,которые SQL*CALC посылает на принтер в начале и конце каждой операции пе-
чати.Пособие по принтеру предоставляет разные управляющие последовательности,
которые вы можете использовать,и их влияние на работу.
          Вот пример ввода этих последовательностей.Для получения сжатой печа-
ти на принтерах,совместимых с Epson,нужно ввести ^O в качестве последователь-
ности инициализации.(Отметим,что при этом нужно нажать цифру 6 на верхнем ре-
гистре и затем большую букву О.) Последовательность отмены - ^N.
          Для других принтеров прочитайте соответствующие пособия.
          Некоторые из этих последовательностей предполагают нажатие клавиши
[Escape].Однако на вашей клавиатуре эта клавиша предназначается SQL*CALC как
подавитель операции.Существует способ ввода этих команд без нажатия клавиши
[Escape].
          Например,многие принтеры на 80 символов могут печатать в сжатом ре-
жиме с 132 символами в строке.Если для вашего принтера нужно подать последова-
тельность [Escape]A,а для выхода - [Escape]B,то вы можете ввести эти последо-
вательности введя ^[A и ^[B.(Введите последовательности символов ^,[ и буква
не нажимая управляющей клавиши.)
          Вы вводите символы ^[ поскольку это другой способ представления сим-
вола Escape.Если вы попытаетесь ввести этот символ просто нажав клавишу
[Escape],то обнаружите,что прекратили выполнение вашей текущей команды и вышли
в меню /Print Options.
          После изменения нужных вам опций переместите указатель к последней
строке меню и нажмите G[Return]H.Появится следующее приглашение:
     PRINT OPTIONS: Update parameter file?  Yes  No
          Если вы ответите Y,то эти опции станут постоянными и будут
     работать при каждом вызове SQL*CALC.

                             GКоманды ORACLEH
          Команды /Oracle позвоялют вам обратиться к ORACLE RDBMS при работе с
ЭТй.Это основа SQL*CALC.Вы можете вводить данные из ORACLE RDBMS в ЭТ,изменять
таблицы ORACLE RDBMS,а также выполнять множество других операций.
          Когда вы выбрали /Oracle то появится следующее меню:
     ORACLE: Execute Show-Info Logon Commit Roolback Options Table

                         GКоманда /Oracle ExecuteH
          Когда данные в таблицах ORACLE RDBMS изменились или вы изменили ин-
формацию в ЭТ,вам нужно пройти по операторам SQL,которые вы ввели и затем их
переисполнить для извлечения новых данных или обновления ваших таблиц ORACLE
RDBMS.Команды Execute обеспечивают переисполнение всех или диапазона SQL-ячеек.
          Когда вы выбрали Execute,появится следующее приглашение:
     ORACLE EXECUTE:  Select Update Insert Delete Lock Copied
          После выбора Select вы сообщаете SQL*CALC что вы хотите переисполни-
ть диапазон операторов SQL SELECT,которые вы ввели в ячейки ЭТ,от одной ячейки
до всех SQL-ячеек ЭТ.Появится следующее приглашение:
     Enter range of SQL-cells to EXECUTE ([Return] for all)
          Нажмите G[Return] Hдля выполнения всех операторов SQL или задайте
диапазон ячеек (таких как а30.d30) введя его,используя метод указаний или вво-
дя поименованный диапазон;  затем нажмите
                                            .
          Когда вы хотите переисполнить все операторы SQL SELECT в ЭТ,вы може-
те просто нажать клавишу G [Query]H.При этом будет такой же эффект,как и для
/Oracle Execute Select и затем нажатия G[Return]H для обозначения всех опе-
раторов SELECT.
          Подобно этому другие опции /Oracle Execute (Update,Insert,Delete,
Lock) используются для переисполнения других ячеек SQL,тех которые вы исполь-
зовали для управления данными в таблицах ORACLE RDBMS.(Смотри раздел Другие
операторы SQL в главе 5,Ввод данных в ЭТ.)
          После исполнения операторов в диапазоне ячеек SQL,SQL*CALC выполнит
каждую ячейку SQL по строкам или колонкам как определено в установке /Work-
sheet Options.Операторы в некоторых ячейках могут ссылаться на значения в дру-
гих ячейках SQL,проверьте в каком порядке они будут исполняться и при необхо-
димости переисполните.
          Когда установка /Worksheet Options для переисполнения - автоматичес-
ки - SQL*CALC будет переисполнять операторы ЭТ после выполнения операторов
SQL.Перевычисления не происходят после выполнения каждого оператора SQL.
          После исполнения операторов в диапазоне ячеек SQL ячейки не будут
исполнены если они больше не лежат в диапазоне,очередь которого исполняться.
SQL*CALC не изменяет координаты диапазона во время выполнения операторов SQL.
Ячейка может переместиться вне диапазона,когда исполнение оператора SQL при-
водит к переполнению и вводятся строки или колонки.
          Когда вы выполните все операторы SQL или примените /Oracle Execute
Select и затем нажмете G[Return]H для обозначения всей ЭТ или нажав
G[Query]H,SQL*CALC будет выполнять их все независимо то от положения в ЭТ.
Вам не нужно беспокоиться о положении ячеек.
          SQL*CALC также выполняет все операторы в ячейках SQL в диапазоне по-
сле того как настанет их очередь,независимо от того были ли они в диапазоне
или нет при работе команды /Oracle Execute.SQL*CALC не корректирует координаты
диапазона во время исполнения операторов SQL.
          Нет способа выполнить 2 типа операторов SQL одновременно.Вам нельзя
исполнить оператор SELECT и INSERT,например,при помощи одной команды.
          Вы не можете переисполнить диапазон операторов SQL кроме SELECT,
INSERT,UPDATE,DELETE,LOCK.Это операторы SQL,применяемые SQL*CALC для манипули-
рования данными.Другие операторы SQL могут встретиться в ЭТах,вы можете выпол-
нить их один за другим.Например,вы не можете переисполнить операторы CREATE
TABLE вместе с G[Edit][Return]H.
          Вы можете остановить выполнение диапазона операторов SQL путем нажа-
тия G[Escape]H.После нажатия этой клавиши ячейки исполняться не будут.
          Когда-бы вы не выполнили операторы UPDATE,INSERT,DELETE,
     LOCK,SQL*CALC выведет маркер **SQL** в ячейках SQL.
          Если  оператор  SELECT выполнен и не поместил данные в свою
     собственную ячейку,то на его ячейке появится надпись **SQL**.
          Если переисполнение любого оператора приводит к ошибке,то значение
**SQL** появится на этой ячейке.SQL*CALC выведет сообщение об ошибке.Скоррек-
тируйте ошибку и примените новую команду /Oracle Execute.
          Опция G Copied H используется для копирования оператора SQL.Когда
вы копируете ячейки SQL по ЭТ,значения не перевычислются во время процесса ко-
пирования.Сигнал *Copied* появится в каждой вновь заполненной ячейке.
          После останова копирования можно использовать /Oracle Execute Copi-
ed,чтобы убедиться,что все ячейки переисполнены и их значения появятся в ЭТ.
(Для выполнения этой операции можно использовать клавишу G[*Copied*]H.)
          Эти операторы SQL **Copied** не классифицируются как любой другой
вид оператора SQL (например,как SELECT или Insert); они м.б. выполнены только
командой /Oracle Execute Copied или клавишей G**Copied**H.
          Вам не разрешено работать с другими операциями SQL*CALC пока все
ячейки не будут скопированы и переисполнены.
          Когда вы нажмете клавишу G **Copied**H,новые ячейки м.б. созданы в
диапазоне,в то время как SQL*CALC исполняет другой оператор SQL.Оператор SELE-
CT может ввести строки (или колонки) и копировать операторы SQL из предыдущей
строки (или колонки) в новую строку (или колонку).

                           GКоманда /Oracle Show-InfoH
          Опции GShow-InfoH предоставляют информацию о последней ошибке,про-
изошедшей во время исполнения и перечисляют ячейки SQL или таблицы,вам доступ-
ные в ORACLE RDBMS.Когда вы выбираете Show-Info,появится следующее приглашение:
     ORACLE SHOW-INFO:  Error  SQL-Cells  My-Tables  All-Tables

                             GСписок ошибокH
          Опция G Error Hполезна,когда вы получили сообщение об ошибке во
время исполнения ячейки SQL и не понимаете какая ошибка была допущена.Эта оп-
ция позволяет вам проанализировать последнюю ячейку SQL,которую вы исполняли,и
полученный результат.Когда вы выбрали опцию Error,появится следующее изображе-
ние:
     GРисунок 6-4H
    |     Press any key to return to the worksheet                   |
    |                                                                |
    |  CELL  F1                                                      |
    |  BEFORE: $select * into &F1:F1 from quota where regoin = &e1   |
    |  AFTER: select * from quota where regoin = 'South'             |
    |  ERROR:                                                        |
    |   ORACLE msg 704: invalid column name                          |
    |                                                                |
    |   0% USED,F1(SQL,A,A)=select*into &F1:F1 from quota where reg |
    |   ORACLE SHOW-INFO: Error  SQL-Cells  My-Tables  All-Tables    |

          Если ячейки SQL не были исполнены после запуска SQL*CALC или
     после входа в ORACLE  появится сообщение об этом.
          Однако,если вы исполните ячейку SQL,то вот как нужно ин-
     терпретировать изображение экрана:
          Верхняя часть экрана показывает оператор  SQL  как  вы  его
       ввели с начальным знаком $,ссылками на ячейки и клаузами INTO.
          Средняя часть показывает расширенную версию оператора такого как он
передан в ORACLE RDBMS - без начального знака доллара или клаузы INTO,с подс-
тавленными значениями для всех ссылаемых ячеек.
          Если  оператор  правильно  исполнен,то появится сообщение
       статуса  в нижней части экрана,например:
       NUMBER OF RECORDS PROCESSED: 15
          Если оператор невозможно исполнить,то появится ссобщение об
       ошибке в нижней части экрана.Если ошибка  относится  к  части
       оператора SQL,то под этой частью появится значок ^.
          Поскольку вам нужно уметь корректировать ошибки,следующая информация
о том,как SQL*CALC возващает значения для ссылок на ячейки,м.б. полезна.(Диа-
пазон трактуется как последовательность ячеек,разделенных запятыми.)
          Если ячейка пуста:
       SQL*CALC заменяет ссылку на 2 одиночные кавычки (' ').
          Если ячейка содержит текст:
       SQL*CALC заменяет ссылку на текст в одиночных кавычках.
          Если ячейка содержит число:
       SQL*CALC заменяет ссылку на число в нормальной (52.3) или экс-
       поненциальной (5.23Е23) форме.
          Если ячейка содержит формулу:
       Она трактуется как ячейка текста или числа в зависимости от значения.
Однако,если ее значение - N/A или ERR,то ячейка не м.б. использована как ссыл-
ка на ячейку и даст ошибку при обращении к ней.
          Если ячейка - SQL-ячейка:
       Она трактуется как формула.Однако,если она не имеет значения (выводит
на экран  **SQL-15** или нечто подобное),тогда она трактуется как пустая.

                              GСписок SQL-ячеекH
          Для получения списка всей ЭТ или диапазона
     SQL-ячеек и их содержимого нужно выбрать SQL-Cells.
          Тогда появится следующее приглашение:
     Enter range of SQL-CELLS to SHOW ([Return] for All)
          Нажмите G[Return] Hдля вывода всех ячеек SQL или введите диа-
     пазон.Экран будет примерно следующим:

     GРисунок 6-5H
    |     Press any key to proceed                                   |
    |                                                                |
    |CELL  F1                                                        |
    |BEFORE: $select * into &F1:F1 from quota where regoin = &e1     |
    |AFTER: select * from quota where regoin = 'South'               |
    |CELL D5                                                         |
    |BEFORE: $select sum(amount) into &d5.d5 from fall5 where        |
    |        salesperson=&a5                                         |
    |AFTER: select sum(amount) from fall5 where salesperson='Schmidt'|
    |CELL D6                                                         |
    |BEFORE: $select sum(amount) into &d6.d6 from fall5 where        |
    |        salesperson=&a6                                         |
    |AFTER: select sum(amount) from fall5 where salesperson='Wong'   |
    |CELL D7                                                         |
    |BEFORE: $select sum(amount) into &d7.d7 from fall5 where        |
    |        salesperson=&a7                                         |
    |AFTER: select sum(amount) from fall5 where salesperson='Martin' |
    |CELL D8                                                         |
    |BEFORE: $select sum(amount) into &d8.d8 from fall5 where        |
    |        salesperson=&a8                                         |
    |AFTER: select sum(amount) from fall5 where salesperson='Clark'  |
    | 7% USED,D1(Blank)                                             |
    |Enter range of SQL-CELL to SHOW([Return] for all)               |

          Если имеется слишком много ячеек,чтобы поместиться  в  эк-
     ран,SQL*CALC делает паузу после каждого заполнения экрана.Для
     вывода следующей страницы нажмите любую клавишу кроме G[Escape]H.
          Для каждой SQL-ячейки операторы показываются в 2-х форматах:
(1) содержимое ячейки как оно представлено в ЭТ - версия BEFORE.
(2) расширенная версия (AFTER) принятая в ORACLE RDBMS - без знака доллара и
    клаузы INTO c действующими значениями,заменившими ссылки на ячейки.
          SQL-операторы перечисляются по строкам или колонкам в зави-
     симости от текущей установки /Worksheet Options.
          На IBM PC вы можете использовать клавиши Shift-G[PRTSC]H для полу-
чения распечатки содержимого SQL-ячеек если ваш принтер подключен и работает.

                    GСписок ваши таблиц - My-TablesH
          Для получения списка ваших таблиц нужно выбрать My-Tables.Вашими та-
блицами будут все таблицы,которые идентифицируются вашим именем пользователя
под которым вы вошли в систему.(Для просмотра этой информации можно воспользо-
ваться клавишей G[Table]H.)
          На экране появится следующая информация:

     GРисунок 6-6H
    |     Press any key to proceed                                   |
    |                                                                |
    |  SALES 1                                                       |
    |  SALES2                                                        |
    |  FALL5                                                         |
    |  QUOTA                                                         |
    |                                                                |
    |   9% USED,D1(Blank)                                           |
    |   ORACLE SHOW-INFO: Error  SQL-Cells  My-Tables  All-Tables    |

     GСписок всех таблиц - All-TablesH
          Для получения списка всех таблиц ORACLE RDBMS,к которым вы
     имеете доступ,нужно выбрать All-Tables.
          Экран будет теперь:

     GРисунок 6-7H
    |     Press any key to proceed                                   |
    |                                                                |
    | LEARN.SALES1                                                   |
    | LEARN.SALES2                                                   |
    | LEARN.FALL5                                                    |
    | LEARN.QUOTA                                                    |
    |                                                                |
    |   9% USED,D1(Blank)                                           |
    |   ORACLE SHOW-INFO: Error  SQL-Cells  My-Tables  All-Tables    |

          Отметим,что каждая таблица имеет впеpеди имя пользователя,
     являющегося владельцем этой таблицы.
          На IBM PC можно использовать клавишу [PrtSc] для распечатки
     списка этих таблиц.

                         GКоманда /Oracle LogonH
          Для входа в ORACLE RDBMS нужно использовать команду GLogonH.Перед
тем как соэдавать,редактировать или копировать ячейки SQL или использовать оп-
ции команд ORACLE кроме Show-Info или Options нужно войти в ORACLE RDBMS.
          Если вы работаете на IBM PC то должны загрузить ORACLE RDBMS в памя-
ть перед входом в ORACLE RDBMS.Вы можете войти в ORACLE RDBMS при первом стар-
те программы ЭТ или позднее при помощи команды /Oracle Logon.
          Случайно вы можете войти в ORACLE RDBMS под чужим именем пользовате-
ля.Проверьте доступные таблицы для текущего имени пользователя при помощи ко-
манды /Oracle Show-Info My-Tables или клавиши [Tables].Примените /Oracle Logon
для изменения имени пользователя.
          После выбора команды Logon появится то же самое приглашение,что и
при первом старте ЭТ:
     Enter your ORACLE user identification.(Press [Return]  to  skip logon.)
     (ввведите ваш идентификатор пользователя ORACLE (нажмите
     [Return] для пропуска logon))
          Введите привильный идентификатор  пользователя  и  появится
     следующее приглашение:
     Enter password.
          Вводимый вами пароль не появится на экране.
          После ввода правильных идентификатора и пароля автоматически выпол-
нится если после последнего входа были какие-то манипуляции с данными.
          Смотри Приложение,Шаги и захваты,для просмотра  некоторых
     модификаций процедуры входа.

                         GКоманда /Oracle CommitH
          Команда Commit делает постоянными все изменения,посланные в ORACLE
RDBMS после последнего входа или последнего исполнения этой команды.При выпол-
нении Quit SQL*CALC или изменения имени пользователя при помощи Logon автома-
тически выполняется Commit.
          После запуска Commit появится сообщение "Operation
     performed",сообщающее,что SQL*CALC готова к дальнейшей работе.

                          GКоманда /Oracle RollbackH
          Эта  команда удаляет изменения данных,выполненных в ORACLE
     RDBMS после последнего Logon  или последнего Commit.
          Вам нужно будет подтвердить ваше желание удалить эти  изме-
     нения перед выполнением этой команды.
          Когда  Rollback  выполнится,появится сообщение "Operation
     performed".

                         GКоманда /Oracle OptionsH
          Эта команда устанавливает стандартные опции для ячеек SQL SELECT,
чтобы управления переполнением и недокомплектом,тем самым исключить потери
времени на переисполнение операторов в этих ячейках.Если вы используете коман-
ду /File Save перед выполнением команды Quit,эти установки будут действительны
при следующих входах в ЭТ.После выбора Options появится следующее приглашение:
     ORACLE OPTIONS:  Overflow  Underflow

                               GПереполнениеH
          Опция Overflow позволяет вам устанавливать стандартные опции для ди-
апазона ячеек SQL SELECT,чтобы управлять переполнением и исключить приглашения
при его возникновении к переисполнению этих ячеек.(Смотри раздел Переполнение
в главе 5,Ввод данных в ЭТ.) После выбора Overflow появится следующее пригла-
шение:
     Enter range of SQL-cells to set OVERFLOW OPTIONS  for  ([Return]
     for current cell)
          Нажмите G[Return]H для ввода опции только для текущей ячейки;
или задайте диапазон ячеек (например,а3.с30) путем ввода диапазона при помощи
метода указаний или ввода поименованного диапазона и нажмите G[Return]H.Пос-
ле задания диапазона появится следующее приглашение:
     ORACLE OPTIONS FOR OVERFLOW:  Insert  Overwrite  Stop  Ask
          Вам нужно выбрать опцию Insert для автоматического ввода новых дан-
ных без приглашения.Для автоматической перезаписи существующих данных без при-
глашения нужно выбрать Overwrite.Для автоматического отбрасывания лишних дан-
ных и останова выполнения нужно выбрать Stop.
          Если вы выбираете опцию Insert,то появится приглашение:
     ORACLE OPTIONS FOR OVERFLOW: Copy formulas & SQL stmts? Yes No Ask
          Для автоматическог копирования при вводе нужно выбрать GYesH,
     для автоматического ввода без копирования - GNoH или GAskH для зада-
     ния вопроса всякий раз как строка вводится.

                               GНедокомплектH
          Эта опция UnderflowG Hиспользуется для автоматического управления
недокомплектом ЭТ и может исключить приглашение при его вознмкновении переис-
полнения ячейки SQL SELECT.(Смотри раздел Недокомплект в главе 5,Ввод данных
в ЭТ.) После выбора этой опции появится следующее приглашение:
     ORACLE OPTIONS FOR UNDERFLOW: range or ([Return] for current cell)
          Нажмите клавишу G[Return] Hдля применения этой опции только в те-
кущей ячейке; или задайте диапазон (например,а2.с24) путем ввода диапазона,ме-
тодом указания или ввода поименованного диапазона и нажмите G[Return]H.После
задания диапазона появится следующе приглашение:
     Enter  range of SQL-cells to set UNDERFLOW OPTIONS for ([Return]
     for current cell)
          Нужно выбрать Delete для удаления дополнительных строк (или колонок)
когда текущий диапазон INTO больше чем извлекаемые данные.Для оставления пус-
тых строк нужно выбрать Stop,сохранив тем самым текущий формат опций и относи-
тельное положение данных ниже (или справа) диапазона INTO.
          Для решения удалить или оставить строки нужно выбрать опцию Ask.

          GВывод на экран статуса переполнения или недокомплектаH
          При установке опций переполнения или недокомплекта для ячейки SQL
SELECT они д.б. выведены в строке статуса для текущей ячейки после статуса за-
щиты,если он есть.Опция Ask удаляет всепредыдущие опции из строки статуса.Вот
некоторые примеры:
      4% USED,D5(SQL,P,IN,D)=select sum(amount) into &d5.d5 from
     fall5 where sales
     Press Help any time.(Begin SQL with $,formula with +,command with /.)
          Ячейка SQL защищена.Установлена автоматическая опция Insert c No
Copy для переполнения.Для недокомплекта применяется автоматическое удаление -
Delete.
     4% USED,D5(SQL,A,S)=select sum(amount) into &d5.d5 from fall5 whe
     Press Help any time.(Begin SQL with $,formula with +,command with /.)
          Ячейка SQL не защищена.Приглашение будет при переполнении.
       Вместо приглашения или удаления для недокомплекта здесь применя-
       ется опция Stop,которая оставляет пустые строки.

                           GКоманда /Oracle TableH
          Команда Table служит для создания новой таблицы ORACLE непосредстве-
нно  из ЭТ.Вы определяете характеристики таблицы (имена колонок,их ширина и
тип данных) и вводите начальный набор значений для заполнения таблицы.Когда вы
выбрали опцию Table появится следующее приглашение:
     Enter name of ORACLE TABLE to be created (1 - 30 chars)
         Если  имя  таблицы  уже существует,то вы увидите следующее сообщение:
     That ORACLE TABLE already exist.Remove old table?  No  Yes
          Если вы введете Yes - Да - то SQL*CALC продолжит работу  по
     созданию,если No - Нет - то команда будет аварийно завершена и
     произойдет возврат к основному приглашению.
          Как только вы ввели правильное имя таблицы,SQL*CALC начнет процесс
создания таблицы.Вы увидите следующее приглашение:
     Enter range containing ORACLE COLUMNS NAMES for the new TABLE
     (e.g.a1.d1)
          Введите диапазон,содержащий имена текущих колонок в ЭТ введя диапа-
зон (например,а1.а7),при помощи указания или поименовывания ранее названного
диапазона.
          Ячейки в диапазоне для имен колонок могут содержать текст,операторы
SQL или формулы,возвращающие текст.Если какая-либо ячейка содержит числа,нули,
повторяющийся текст,формулы,возвращающие числа,операторы SELECТ,возвращающие
числа,операторы SQL,возвращающие нули операторы SELECT не помещающие данные в
свои собственные ячейки (**SQL**),операторы неSELECT или формулы,возвращающие
ERR или N/A вам будет сказано следующее:
     All column names must be text.
          Тогда вас спросят снова о диапазоне,содержащем имена колонок.
          Как только вы введете правильный набор имен колонок,SQL*CALC приме-
нит эти команды для ввода их в БД ORACLE RDBMS.Эти команды не появятся на эк-
ране.Вместо этого вы увидите следующее сообщение с именем NAME,задающим новую
таблицу:
     Creating table NAME....
          Колонки будут поименованы в соответствии с именами в ЭТ.
          SQL*CALC  будет проверять содержимое каждой колонки для определения
типа данных (числа,текст или данные) и будет определять максимальную длину ко-
лонки символов (длина длиннейшей записи в этой колонке).Если вся колонка -
пробел - то ее ширина устанавливается в 20 символов.
          До 256 колонок можно создать и максимальная ширина колонки м.б. в
240 символов.
          Как только колонка поименована,SQL*CALC  спросит  данные,
     вводимые в новую таблицу:
     Enter range containing DATA for the new ORACLE TABLE (e.g.a2.d20)
          Введите диапазон данных введя адреса ячеек,указав или пои-
     меновав предварительно поименованный диапазон.
          Общее число колонок данных должно отражать общее число имен колонок,
которое вы обозначили в ответ на предыдущее приглашение.Если диапазоны не име-
ют такую же ширину,то вы получите следующее сообщение:
     Number of data columns does not match number of column names.
          Приглашение для диапазона,содержащего данные,будет повторено.
          Ячейки в диапазоне данных НЕ могут содержать формулы,возвращающие
N/A или ERR,повторяющийся текст,операторы SQL не SELECT или операторы SQL,не
помещающие значения в свои собственные ячейки (**SQL**).Если диапазон содержит
любую из этих ячеек,то вы увидите следующее сообщение:
     Data range contains a repeating text or **SQL** cell
          После  этого приглашение для диапазона,содержащего данные,
     снова появится.
          Каждая колонка в диапазоне данных должна содержать данные только од-
ного типа: текст или числа.Числа включают в себя числа,формулы,возвращающие
числа,операторы SQL,возвращающие числа или нули.Текст включает в себя текст,
формулы,возвращающие текст,операторы SQL,возвращающие тест или пробелы.Если
колонка содержит смесь типов данных,то вы увидите следующее сообщение:
     All data in one of the columns is not entirely numbers or text
          Снова  появится  приглашение  ввода  диапазона,содержащего данные.
         Как только вы определите правильный диапазон ячеек,содержащих данные,
SQL*CALC введет значения и закончит создание новой таблицы; затем она выдаст
следующее сообщение:
     Table created and data inserted.
          Таблица теперь становится постоянной частью ORACLE RDBMS,но данные в
ней не составят постоянную часть БД ORACLE RDBMS пока вы не введете команды
/Oracle Commit или /Quit SQL*CALC (когда будет выполнена автоматически команда
Commit).
          До тех пор пока вы не используете команду /Oracle Commit вы можете
отменить содержимое новой таблицы путем выполнения команды /Oracle Rollback.
Помните,что эта команда будет отменять любые изменения данных,которые вы сде-
лали в БД после входа в нее или выполнения команды Commit.Таблица в вашей БД
останется,но без данных в ней.

                              GКоманда QuitH
          Для выхода из SQL*CALC нужно использовать команду  Quit.
     Приглашение будет следующим:
     QUIT:  No  Yes
          Помните,что ЭТ,с которой вы работаете автоматически НЕ сохраняется
при выполнении этой команды.Нужно применить команду /File Save перед выходом.
          Если вы ответите No - Нет - в ответ на приглашение,то вы возвратите-
сь к основному приглашению.Ответ Yes - Да - возвратит вас в вашу OC.

+                              GПриложение А:H
                     GПособие по установке для IBM PCH
          SQL*CALC сконфигурирована для запуска на IBM PC/ХТ с как минимум 512
кБайт памяти.SQL*CALC проверена на функционирование с ORACLE 4.1.4.SQL*CALC не
протестирована с ORACLE  4.1.1.Эта версия SQL*CALC не работает на TI Profes-
sional.
          Установка SQL*CALC занимает как минимум 10 минут.
          Для установки SQL*CALC следуйте данной процедуре:
     1.Убедитесь,что вы находитесь в DOS и что ваш текущий дисковый
        накопитель - это твердый диск (вы увидите приглашение С:>).
     2.Введите дискету  по имени SQL*CALC в накопитель и закройте дверцу.
     3.Введите: Ga:H GInstallH
          Программа установки сообщит вам что делать.Вы можете отменить прог-
рамму установки нажав и удерживая клавишу [GCtrlH] (расположенную слева на
клавиатуре над клавишей shift) и нажав клавишу С,а затем введя Y для слова Yes
- Да.
          Стартуйте SQL*CALC при помощи следующей записи:
     > sqlcalc

+                             GПриложение ВH
                         GСообщения об ошибкахH
          На экране могут появиться следующие сообщения об ошибках.Эти сообще-
ния перечислены в числовом порядке возрастания и каждое сообщение сопровождае-
тся причиной ошибки и действием для ее коррекции.
GCAL-001: Insufficient memoryH
          Причина:  недостаточно памяти для извлечения данных ORACLE RDBMS,ко-
          пирования ячеек в новые ячейки,создания ячеек,введения правильного
          числа строк,извлечения файла или вывода SQL-ячеек ЭТ на экран.
          Действие: если это сообщение появится на экране при извлечении дан-
          ных ORACLE RDBMS,то попытайтесь уменьшить клаузу INTO в операторе
          SELECT.SQL*CALC  может извлечь больше строк до переполнения диапазо-
          на INTO.В другой ситуации вам нужно прекратить работу.Обратите вни-
          мание на "% USED",если вы подошли к 100%.
GCAL-002: Cannot edit an empty (Blank) cell.Enter data first.H
          Причина: вы нажали клавишу [Edit],а в текущей ячейке нет информации.
          Действие: переместитесь в другую ячейку и потом нажмите эту клавишу.
GCAL-003: Not a valid cell coordinate.Example: a1 a105H
          Причина: SQL*CALC ждала координату ячейки,а вы ввели что-то другое.
          Действие: введите правильные координаты  ячейки.
GCAL-004: Not a valid cell range.Example: a1.a10 b5.k105 a5H
          Причина: SQL*CALC ждала диапазон ячеек,а вы ввели что-то другое.
          Действие: введите правильный диапазон ячеек.
GCAL-005: Not a valid row.Example: 1 105H
          Причина: SQL*CALC ждала N строки,а  вы  ввели  что-то другое.
          Действие: введите правильный номер строки (1 - 8192)
GCAL-006: Not a valid column.Example: a bhH
          Причина:  SQL*CALC  ждала  букву колонки,а вы ввели что-то другое.
          Действие: введите правильную букву (или буквы) колонки (А -IV)
GCAL-007: Cannot delete row or column containing cells referred toH
              GelsewhereH
          Причина:  строка или колонка,которую вы пытаетесь удалить,содержит
          ячейку,на которую ссылается формула или оператор SQL где-то в ЭТ.
          Действие: измените формулу или оператор SQL так,чтобы он не
          ссылался больше на эту ячейку.
GCAL-008: Mismatched FROM and TO ranges.Press HELP during /CopyH
          Причина: диапазоны FROM и TO в команде /Copy не совместимы.
          Действие: измените диапазоны FROM или TO так чтобы они стали совмес-
          тимы.Если вы копируете из части колонки,то должны копировать в часть
          строки или наоборот.Если вы копируете блок,то должны копировать в
          ячейку.
GCAL-009: FROM and TO ranges are not valid cell ranges; Example:H
              Ga1.b1  a1b5,d1H
          Причина:  во время выполнения команды /Copy вы ввели диапа-
          зоны  FROM и TO,не соответствующие истине.
          Действие: введите первый диапазон,запятую и 2-й диапа-
          зон.Диапазон может состоять из одной ячейки.
GCAL-010: File does not existsH
          Причина:  в текущем каталоге отсутствует введенное вами имя файла.
          Действие: просмотрите список существующих имен файлов.(Для этого мо-
          жно применить клавишу G[Name]H.) Заново введите правильное имя фа-
          йла.Если нужный файл существует в другом каталоге,то можно этот ка-
          талог сделать текущим при помощи команды /File Utilities Set-Direc-
          tory.
GCAL-011: File is not a worksheetH
          Причина: заданный вами файл не создан при  помощи  SQL*CALC
          или он был изменен после сохранения программой SQL*CALC.
          Действие:  если вы ошибочно ввели имя файла,то введите его заново
          правильно; если файл д.б. читаем SQL*CALC,то проверьте при помощи
          какого-либо текстового процессора,что он состоит только из читаемых
          символов.
GCAL-012: Not enough disk spaceH
          Причина: на диске нет достаточного свободного  пространства
          для сохранения вашего файла.
          Действие: сохраните файл на другом диске изменив его при помощи ко-
          манды /File Utilities Set-Directory и задав диск (например,А:).В
          противном случае вам нужно увеличить свободное пространство на диске
          удалив ненужные файлы при помощи команды /File Utilities Erase.
GCAL-013: Not a valid file name.Example: sales.prn year5.oldH
          Причина: вы ввели неверное имя файла.
          Действие: смотри пособие по OC,в которой дано полное описание имени
          файла.Можно также проверить список существующих имен файлов (при по-
          мощи клавиши G[Name]H) и ввести правильное имя заново.
GCAL-014: Move the cell cursor elsewhere for that commandH
          Причина:  нельзя использовать данную команду при данном по-
          ложении курсора.Эта ошибка м.б. при выполнении ко-
          манд /Worksheet Window или /Worksheet Title.
          Действие:  переместите  курсор  и попытайтесь выполнить эту
          команду снова.
GCAL-015: File SQLCALC.EXE missing or damagedH
          Причина: SQL*CALC не смогла найти файл SQLCALC.EXE во время
          выполнения.
          Действие: если SQLCALC.ЕХЕ на дискете,а она удалена,то вставьте ее в
          дисковод.Если вы переименовали файл,выйдите из SQL*CALC и переимену-
          йте его заново.В других случаях файл м.б. поврежден.Сделайте новую
          копию файла из архивного файла.
GCAL-016: Not a valid number or formula.Example: 6@sum(a1.a10)H
              G+a1 +a2H
          Причина: вы ввели неверную формулу или число.
          Действие: если вы хотите ввести текст,начните с одиночной кавычки,
          поскольку SQL*CALC пыталась интерпретировать текст как число или фо-
          рмулу.Если вы хотите ввести число,то убедитесь в правильности каждой
          цифры без начальных и конечных пробелов.Убедитесь,что вы не ввели l
          вместо 1,или О - букву вместо 0 - нуля.Также убедитесь в вводе точки
          в качестве 10-й точки,а не запятой.Если вы хотите ввести формулу,
          убедитесь,что ввели правильное число скобок,а также,что вы не ввели
          пробелы в формуле,за исключением текста в кавычках.
GCAL-018: Not a valid TO filename.Example: sales.prnH
          Причина: вы ввели неправильное имя файла.
          Действие: смотри пособие по OC,в которой дано полное описание имени
          файла.Можно также проверить список существующих имен файлов (при по-
          мощи клавиши G[Name]H) и ввести правильное имя заново.Если файл
          существует в другом каталоге,то нужно сделать его текущим.
GCAL-019: Not a valid FROM filename.Example: sales.oldH
          Причина: вы ввели неправильное имя файла.
          Действие: смотри пособие по OC,в которой дано полное описание имени
          файла.Можно также проверить список существующих имен файлов (при по-
          мощи клавиши G[Name]H) и ввести правильное имя заново.Если файл
          существует в другом каталоге,то нужно сделать его текущим.
GCAL-020: Cannot create fileH
          Причина:  SQL*CALC не может создать файл,который вы запро-
          сили при помощи команды /File Save.
          Действие: убедитесь,что вы правильно вызвали команду.В противном
          случае у вас возникли неисправности в аппаратуре или в OC.
GCAL-021: Not a valid file pattern.Example: sales.* year*.*H
              G??may??.*H
          Причина: вы ввели неверный файл.
          Действие: смотри пособие по OC,в которой дано полное описание имени
          файла.Можно также проверить список существующих имен файлов (при по-
          мощи клавиши G[Name]H) и ввести правильное имя заново.Если файл
          существует в другом каталоге,то нужно сделать его текущим.
GCAL-022: Not a valid drive specification.Example: b: c:H
          Причина: вы попытались задать несуществующее имя накопителя
          или тот накопитель,к которому у вас нет доступа.
          Действие: введите правильное имя накопителя.
GCAL-023: Not a valid range name.Example: totals year2 l astmonthsalaryH
          Причина: вы обратились к  имени  несуществующего  диапазона
          или попытались присвоить диапазону неверное имя.
          Действие: введите правильное имя диапазона.Примените команду /Range
          Name List для получения списка всех определенных на данный момент
          диапазонов.Если вы поименуете новый диапазон,помните,что имя должно
          состоять из до 15 символов и начинаться с буквы.Имена диапазонов
          чувствительны к типам букв - sales не соответствует Sales или SALES.
GCAL-024: Cannot change or delete protected cells.Use /RangeHGUnprotectH
          Причина:  нельзя  переписать,отредактировать,изменить или
          удалить защищенные ячейки.
          Действие: отмените работу,если вам не нужно изменять защищенные яче-
          йки.В противном случае нужно применить команду /Range Unprotect для
          снятия защиты с ячеек и затем перезапустите нужную вам команду.
GCAL-025: Name not defined on worksheet.Use /Range NameH
          Причина: вы использовали еще не заданное имя диапазона.
          Действие: если вы ввели координаты ячейки или диапазона,проверьте их
          на правильность.В противном случае просмотрите список имен диапазо-
          нов при помощи команды /Range Name List.Введите правильное имя или
          примените команду /Range Name для поименования нового диапазона.Пом-
          ните,что имена диапазонов чувствительны к типам букв,большим или
          маленьким.
GCAL-026: Not a valid link rangeH
          Причина: имя диапазона,заданное вами,еще не  определено  в
          ЭТ,с которой вы хотите связаться.
          Действие: задайте правильный диапазон.Если вы забыли,какие имена оп-
          ределены в связываемой ЭТ,то вы должны сохранить текущую таблицу,
          стереть ее и загрузить связываемую таблицу,в которой нужно просмот-
          реть имена диапазонов при помощи команды /Range Name List.
GCAL-027: Cannot link cellH
          Причина: вы попытались удалить несуществующую связь.
          Действие: проверьте имя связи и переисполните команду.
GCAL-028: File SQLCALC.OVL missing or damagedH
          Причина:  SQL*CALC не может найти файл SQLCALC.OVL во время работы.
          Действие: если SQLCALC.OVL на дискете,а она удалена,то вставьте ее в
          дисковод.Если вы переименовали файл,выйдите из SQL*CALC и переимену-
          йте его заново.В других случаях файл м.б. поврежден.Сделайте новую
          копию файла из архивного файла.
GCAL-029: Cannot adjust formulasH
          Причина: SQL*CALC не может скопировать формулы если относительная
          ссылка идет на ячейку выше первого ряда или левее колонки А.
          Действие:  проверьте  формулу и введите нужные исправления.
          (Смотри главу 5.)
GCAL-030: Only 8192 rows availableH
          Причина: вы использовали команду,которая добавляет строк свыше 8192.
          Действие:  отмените  команду (при помощи клавиши [Escape]).
          Разделите ЭТ на 2 поменьше.
GCAL-031: Only 256 columns availableH
          Причина: вы использовали команду,которая добавляет свыше 256 колонок.
          Действие:  отмените  команду (при помощи клавиши [Escape]).
          Разделите ЭТ на две поменьше.
GCAL-197: No links are definedH
          Причина: вы использовали команду /File Link List,но не оп-
          ределили файлы.
          Действие: никиких не нужно,только если вы  хотите  создать
          связь при помощи команды /File Link Create.
GCAL-201: No Names are definedH
          Причина:  вы  использовали команду /Range Name List без за-
          данных диапазонов.
          Действие: никакого не нужно.
GCAL-305: Not valid FROM or INTO clause.Correct mistake andH Gremove'H
          Причина: вы написали оператор SQL SELECT с неверными  клау-
          зами FROM или INTO.
          Действие:  обратитесь  к  главе  5,где описаны правильные
          форматы операторов SQL SELECT.Убедитесь в  наличии  ампер-
          сандов перед ссылками на ячейки.
GCAL-307: Not valid use of &.Correct mistake and remove'H
          Причина:  вы  ввели  амперсанд в место,которое для него не подходит.
          Действие: амперсанд можно использовать только перед коорди-
          натами ячеек ЭТ SQL*CALC.Измените  оператор.
GCAL-309: ORACLE returned an invalid data typeH
          Причина:  вы  попытались  извлечь  новый  тип данных ORACLE
          RDBMS,о котором SQL*CALC не знает.
          Действие: не пытайтесь извлечь эту колонку.
GCAL-310: Not a valid INTO clause.Correct mistake and remove'H
          Причина: вы записали оператор SQL SELECT или SQL  INSERT  с
          неверной клаузой INTO.
          Действие: обратитесь к главе 5.
GCAL-325: No SQL statements on worksheetH
          Причина:  вы  запросили  список  ячеек SQL,а в ЭТ их нет.
          Действие: не нужны.
GCAL-339: Not a valid number.Example: 1 12H
          Причина: SQL*CALC ждала число,а получила нечто другое.
          Действие: введите правильное число.Убедитесь в правильности каждой
          цифры без начальных и конечных пробелов.Убедитесь,что вы не ввели l
          вместо 1,или О - букву вместо 0 - нуля.Также убедитесь в вводе точки
          в качестве 10-ной точки,а не запятой.
GCAL-341: Options can be set only for COLUMN or WORKSHEETH
          Причина:  вы попытались установить опцию /Layout (такую как
          Width) для ячейки или строки,а не для  колонки  или  целой ЭТ.
          Действие: правильно используйте команду (смотри главу 6).
GCAL-362: Invalid table nameH
          Причина:  вы  ввели  неправильное имя таблицы после команды
          /Oracle Table  для создания новой таблицы.
          Действие: введите правильное имя таблицы.Имена таблиц ORACLE RDBMS
          должны содержать от 1 до 30 символов.
GCAL-363: All column names must be textH
          Причина:  диапазон  электронной  таблицы,который вы задали
          как содержащий имена колонок для таблицы,создаваемой  при
          помощи команды /Oracle Table,содержит нетекстовые ячейки.
          Действие:  убедитесь,что все ячейки содержат текст,опера-
          торы SQL,возвращающие  текст  или  формулы,возвращающие текст.
GCAL-364: Number of data columns does not match number ofH Gcolumns namesH
          Причина: вы ввели несовпадающее количество колонок данных с
          количеством имен колонок.
          Действие: проверьте вводимые диапазоны.Скорректируйте диа-
          пазон  для  записей  данных или отмените работу (при помощи
          клавиши  [Escape]) и начните заново.
GCAL-365: Data range contains a repeating text or**SQL** cellH
          Причина: ORACLE RDBMS  не  может  воспринять  повторяющийся
          текст или название **SQL** как правильные данные в таблице.
          Действие: проверьте вводимые диапазоны и скорректируйте за-
          писи для исключения подобных ячеек.
GCAL-366: All data in one of the columns is not entirely numbersHGor textH
          Причина: одна из колонок,которую вы хотите ввести в табли-
          цу,содержит смесь текста и чисел.
          Действие: проверьте вводимый диапазон и скорректируйте его.
GCAL-371: Insert statement too long.Recreate tableH
          Причина:  оператор  Insert слишком длинный для сохранения в
          буфере SQL*CALC.
          Действие: поскольку вы ничего не сможете сделать,то будуте
          возвращены в основное приглашение и операция создания отменяется.

+                  GПримечания для опытных пользователей ЭТH
          Пользователи других программ ЭТ узнают,что SQL*CALC разработана так,
чтобы переход от от одной программы к другой был наиболее прост.Другими слова-
ми команды SQL*CALC отражают те привычки,которые вы приобрели при работе с
другими системами,особенно системы Lotus 1-2-3.
          Это приложение содержит следующее:
 *  разницы в формате между ЭТй  SQL*CALC как она
        появляется на экране и ЭТй Lotus 1-2-3.
 *  команды в SQL*CALC,имеющие другие имена,чем совместимые с ни-
        ми в Lotus 1-2-3.
 *  команды Lotus 1-2-3 не имеющие аналога в SQL*CALC.
 *  несколько незначительных разниц между SQL*CALC и Lotus 1-2-3.

                         GРазницы в выводе на экранH
 *  SQL*CALC выводит строки статуса,приглашения и ввода в нижней части экрана,
    а  Lotus 1-2-3 - в верхней.При этом SQL*CALC становится совместима с IAP.
    Пользователям нужно только чуть поднять глаза над клавиатурой,чтобы охва-
    тить эти важные строки.
 *  SQL*CALC всегда выводит приглашение сразу после старта программы,так что
    все пользователи от новичка до опытного,знают,что им делать дальше.

                            GРазницы в командахH
 *  все форматы и присвоения для ячеек,строк,колонок или целой
        ЭТ выполняются под одним типом команды slash
        - /Layout:
          формат /Worksheet  - SQL*CALC /Layout Worksheet;
          формат /Range - SQL*CALC /Layout Field,/Layout Column или
          /Layout Horiz-Row;
          /Worksheet Global Label-Prefix - SQL*CALC /Layout Worksheet Align;
          /Range Label-Prefix - /Layout Field Align,/Layout Column
          Align или /Layout Horiz-Row Align.
 *  все установки ширины колонок под командой /Layout:
          /Worksheet Global Column-Width - SQL*CALC /Layout Worksheet Width;
          /Worksheet Column-Width - SQL*CALC /Layout Column Width.
 *  /Worksheet Global Default - SQL*CALC /Printer Options или /File
        Utilities Set-Directory.
 *  /Worksheet Global Recalculation - SQL*CALC /Worksheet Options.
 *  /File Combine - SQL*CALC /File Merge.
 *  /File Erase - SQL*CALC /File Utilities Erase.
 *  /File List - SQL*CALC /File Utilitites List.
 *  /File Directory - SQL*CALC /File Utilities Set-Directory.
 *  /Data Sort - /Range Sort.

                          GОтсутствующие командыH
          Некоторые команды,знакомые пользователям Lotus 1-2-3 не включены в
SQL*CALC или присутствуют  там  под  другими  именами (смотри выше):
          /Worksheet Global Format
          /Worksheet Global Protection
          /Range Format (только для ячеек)
          /Range Justify
          /Range Input
          /Move
          /File Combine
          /File Xtract
          /File Import
          /Print Line/Page
          /Print Options Footer
          /Print Options Other Cell-Formulas
          /Printer Align
          /Graph
          Многие  из операций,выполняемых этими командами,могут вы-
     полняться SQL*CALC,прверьте индекс.

               GНекоторые свойства,присущие только SQL*CALCH
 *  абсолютное/относительное копирование делается путем выявления различий ме-
    жду ссылками,написанными большими или маленькими буквами:
          ссылки,написанные большими буквами,абсолютны;
          ссылки,написанные маленькими буквами,относительны.
 *  когда вы указываете на ячейку,то координаты ячейки не появятся в строке
    ввода пока вы не нажмете клавишу,отличную от клавиши-стрелки.
     *  клавиша [End] всегда перемещает текущую ячейку в нижний правый
        угол пространства ЭТ.
     *  нажатие клавиши [Escape] отменяет команду,с которой вы работаете.

+                               GПриложение DH
                       GЛовушки и тонкости SQL*CALCH
          Это приложение приводит некоторые приемы использования SQL*CALC,не-
которые вещи,используемые опытными пользователями,но что лежит вне возможнос-
тей обычной документации.Оно приводит также некоторые ловушки или ошибки,в ко-
торые можно часто попадать.
          Порядок этого приложения произволен,это случайная  коллек-
     ция приемов,а не упорядоченный перечень.
          Потратьте  несколько минут для перечитывания этого приложе-
     ния время от времени.Вам может попасться нужная информация.
 *  на IBM PC можно использовать SQL*CALC без применения ORACLE RDBMS.В этом
    случае можно использовать SQL*CALC автономно.
 *  на IBM PC у вас будет больший объем памяти при работе в автономном режиме
    SQL*CALC.Если вы уже извлекли данные из таблиц ORACLE RDBMS и нуждаетесь в
    большем объеме доступной памяти,то нужно сохранить ЭТ,выйти из SQL*CALC,и
    удалить ORACLE RDBMS из памяти.(Если вы при вызове ORACLE RDBMS применили
    опцию /R,то можете ввести exit в ответ на приглашение системы,в противном
    случае нужно перезагрузиться).Затем рестартуйте SQL*CALC.Поскольку SQL*
    CALC использует всю доступную память,у вас будет около 300К дополнительно
    - память,в которой размещалась ORACLE RDBMS.
 *  когда вы вошли в ORACLE,вы можете ввести пароль в той же строке,где вы
    ввели имя пользователя,разделяя их при помощи косой черты: scott/tiger.Вам
    не нужно ждать приглашение на ввод пароля.
 *  после входа в SQL*CALC вы можете ввести имя пользователя,пароль и имя фай-
    ла,все в одной строке:
       sqlcalc scott/tiger @filename
    Это действие введет SQL*CALC,введет вас в ORACLE и выведет ЭТ,сохраняемую
    под данным именем,на экран.
 *  вы можете иметь несколько строк,выбранных по запросу,появляющихся на экра-
    не по одной.Примените самоссылающийся запрос.Вот пример:
          $select min(sic) into &b1 from industry where sic>&b1
        эта формула извлечет следующий код sic,поскольку он ссылает-
        ся на последний извлеченный код sic.
 *  вы можете заблокировать сегоднящие данные в ЭТ навсегда.Примените клаузу
    INTO,помещающую извлеченные данные оператором SQL в ячейку,не содержащую
    оператор SQL.Затем удалите оператор SQL и теперь сохраненные в какой-то
    ячейке данные не будут перезаписаны другими операторами SQL.
 *  вы можете автоматизировать процесс обработки Overflow или Underflow.Приме-
    ните команды /Oracle Options Overflow и /Oracle Options Underflow.Каждая
    установка связывается с конкретным оператором или диапазоном операторов
    SQL.Вы увидите установки в строке статуса.Например,SQL(IY,D) - значит вве-
    сти и скопировать при возникновении переполнения и всегда удалять при
    возникновении недокомплекта.
 *  вы можете получить список таблиц,которыми вы владеете или к которым имеете
    доступ.Примените команды /Oracle Show-Info My-Tables или /Oracle Show-Info
    All-Tables или клавишу [Table].
 *  вы можете увидеть где возникла ошибка в операторе SQL.Примените команду
    /Oracle Show-Info Error.Если ошибки не было,то эта команда покажет сколько
    записей было извлечено,обновлено,введено или удалено оператором SQL.
 *  вы можете выполнить операцию 'что если' над данными ORACLE RDBMS перед их
    вводом в ЭТ.Примените ссылки на ячейки в операторе SQL.Вот пример:
          $select &a1*Sales from forbes where sic=&b1
    эта формула умножит стоимость продаж на значение А1 перед помещением дан-
    ных в ЭТ.
 *  вы можете управлять порядком выполнения операторов SQL.Они выполняются ст-
    рока за строкой или колонка за колонкой в зависимости от установки /Work-
    sheet Options.Эта установка влияет также на порядок вычисления формул.

+                                 GГлоссарийH
          Если вы не найдете нужный вам термин в этом Глоссарии,то
     обрптитесь к индексу.Глава 5,Ввод данных в электронную  табли-
     цу,обеспечивает определения функций,доступных в SQL*CALC.

abort  - отменить - решив,действительно ли вы хотите продолжить выполнение ко-
     манды в ее середине.Обычно для отмены команды нужно нажать клавишу
     [Escape].
address - адрес - смотри cell reference.
arrow  keys - клавиши-стрелки - при помощи этих клавиш вы можете перемещать
     курсор и текущую ячейку по экрану.(На IBM PC эти клавиши расположены на
     цифровой клавиатуре.Если клавиши в режиме стрелок не работают,то нажмите
     клавишу [NumLock] и попытайтесь использовать их снова.)
ascending  order - увеличивающийся порядок - если вы работаете с текстовыми
     записями,то это значит по алфавиту; если же вы работаете с числами - по
     возрастанию.

basic prompt - основное приглашение - строка инструкций,появля-
     ющаяся при первом включении SQL*CALC или после ввода команды.
block - блок - прямоугольный набор ячеек,идентифицирующийся адресами верхней
     левой и нижней правой ячейками,разделенными точкой (например,а23.се45).
bold type - жирный шрифт - для выделения текста.
borders - границы - строка букв сверху экрана и колонка цифр
     слева экрана для обрамления ЭТ.

сell  -  ячейка  - место на пересечении колонки и строки куда вы
     помещаете  информацию.
cell coordinate - координаты ячейки - адрес ячейки,составленный
     из букв колонки и цифр строки,пересекающихся в данной ячейке.
cell reference - ссылка на ячейку - координаты ячейки,использо-
     ванные в формуле или операторе SQL.Ссылки на ячейку могут изме-
     няться по мере копирования формулой или оператором SQL.
clause - клауза - дополнительное условие,которое вводится в оператор SQL для
     ограничения используемых данных.Например,различные клаузы могут говорить
     о том,что вам нужна информация только о продажах одного человека и что
     она д.б. помещена в заданный диапазон ячеек.
column - колонка - вертикальная строка ячеек,идентифицированная одной или дву-
     мя буквами (например,В или ВЕ).В SQL*CALC доступны 256 колонок.
command - команда  -  приказ для SQL*CALC.Некоторые команды SQL*CALC типа пе-
     рехода в другую ячейку,можно задать из основного приглашения.Другие кома-
     нды группируются в комплекты; смотри команды slash Worksheet,Range,Layout,
     File,Copy,Print,Oracle,Quit.
configure - конфигурировать - установить различные опции для печати сделанной
     вами ЭТ.Как только вы установили опции вашего принтера,вы можете их сох-
     ранить для последующего использования.Для этой цели примените команду
     /Print Options.
coordinate - координаты - смотри cell reference.
Cоpy command - команда копирования Сopy - эта команда копирует наборы ячеек
     (от одной ячейки до блока) в другую часть ЭТ.
current  cell  -  текущая ячейка - высвеченная ячейка на экране.
     Это ячейка,куда будет вводиться информация.
cursor - курсор - яркий индикатор в строке ввода,показывающий
     где появится следующий вводимый символ.
cursor keys - клавиши курсора - смотри arrow keys.

data  -  данные - информация,которую вы хотите получить из БД,или ввести в нее.
database - БД- программа для хранения и изменения  за-
     писей всех видов информации.Ваша БД- ORACLE RDBMS.
default  -  по умолчанию - установки,которые вы обнаружите при
     первом входе в SQL*CALC.Например,каждая колонка  начинается  с
     ширины в 8 символов,тем не менее вы можете ее изменить.
descending  order - порядок по уменьшению - когда вы работаете с текстом,то
     упорядочиваете его в обратном алфаитном порядке,если с числами - то по
     убыванию.
directory - каталог - список файлов на диске.
display - дисплей - это слово обычно употребляется для обозначе-
     ния того,что вы видите на экране (на английском).
display window - окно дисплея - область ЭТ выведенная на экран.
dollar format - денежный формат - смотри money format.

edit  -  редактировать  -  изменять содержимое ячейки.Для этого
     нужно нажать клавишу [Edit].
entry - записать - ввести информацию  (текст,числа,формулы,
     команды или данные из ORACLE RDBMS) в ЭТ.
error message - сообщение об ошибке - сообщение на экране,обычно состоящее из
     номера ошибки и объяснения что вы ввели некоторое неверное сочетание кла-
     виш.Нажмите [Escape] и заново введите команду.
execute - выполнить - задать SQL*CALC выполнить команду,которую вы ввели.
exponential display - экспоненциальное представление  - показать числа в науч-
     ной нотации с одной цифрой слева от 10-ной точки,возведенной в степень
     10.Буква е отделяет цифры от степени 10.Итак 4,560 - показывается в экс-
     поненциальном представлении как 4.56е3.
expression - выражение - второе название формулы.

field - поле - другое название одной ячейки.
file  -  файл - набор данных,который вы можете сохранить и вызвать для дальне-
     йшей работы.Каждый файл должен иметь свое собственное имя.Файлы сохраняю-
     тся на диске.Не завершайте SQL*CALC без сохранения файла,с которым вы ра-
     ботаете.
File commands - команды File - серии команд,которые вы применя-
     ете для извлечения файлов с диска в память для работы и для сох-
     ранения обработанной информации в файл.
format - формат - вид ЭТ на экране или в распечатке.Большинство форматирующих
     действий управляются командами Layout slash.
format disk - форматирование диска - приготовление чистого диска
     для приема и хранения информации.Если вы переформатируете ис-
     пользуемый диск,то потеряете всю информацию,хранимую на нем.
formula - формула - математическое выражение для вычисления значения на базе
     известных чисел.Например,вы можете ввести ввести формулу,сообщающую SQL*
     CALC ввести в ячейку значение,полученное в результате деления содержимого
     одной ячейки на содержимое другой.Формулы иногда называют выражениями.
function  -  функция  - специальный терм,используемый в формуле для выполнения
     SQL*CALC сложных расчетов.Например,функция МАХ позволяет найти максималь-
     ное значение из группы ячеек.(Смотри главу 5,Ввод данных в ЭТ,где дан их
     список.)

graphics - графика - иллюстрация или картинки,выполненные на
     компьютере или представление клавиш компьютера.
grid - сетка - матрица пересечений колонок и строк,составляющая ЭТ.

help - подсказка - в любое время вы можете получить подсказку по
     команде или приглашении нажав клавишу [Help].

input  line  -  строка  ввода - строка под строкой приглашения в
     нижней части ЭТ на экране,то место,где появля-
     ются вводимые вами символы.
input - ввод - информация,которую вы вводите в ЭТ.
install  - установка - настройка программы для ее использования.(Смотри прило-
     жение А,где вы можете получить сведения об установке SQL*CALC на IBM PC.
     Для других машин обратитесь к книге Installation and User's Guide.)

kernel - ядро - вы будете работать с ядром ORACLE RDBMS - набором файлов,кото-
     рый позволяет вам войти в систему и выбрать имеющуюся там информацию.Та-
     ким образом ядро содержит не только программу,но и информационные таблицы.

language - язык - специфический набор слов и символов,которые
     составляют программу,выполняемую в заданном вами порядке.Ко-
     манды нужно вводить очень точно,чтобы программа правильно работала.
Layout  commands - команды Layout - приказы для SQL*CALC как ус-
     тановить опции экрана: ширину колонок,сколько цифр выводить нуж-
     но ли выравнивать текст слева или справа и так далее.
link - связывание - соединить вместе информацию нескольких элек-
     тронных таблиц с таблицей,с которой вы в настоящее время  работаете.
load  - загрузить - термин противоположный retrieve,ввести файл с диска в па-
     мять для его дальнейшей обработки.Можно загружать и программы.
logged drive - текущий накопитель - этот термин имеет значение только для IBM
     PC.Накопитель в котором вы в данный момент находитесь,он идентифицирован
     приглашением операционной системы с левой стороны экрана.
logon - вход - ввод программы,которая позволяет вам работать  в
     системе.Для входа в SQL*CALC нужно ввести слово sqlcalc.
lower case - маленькие буквы.

manipulate  -  манипулировать - делать некоторые изменения в информации,с ко-
     торой вы работаете (удалять,вводить,добавлять,вычислять и так далее).
memory - память - пространство памяти компьютера для ввода ин-
     формации и работы в нем.
mode  - режим - уровень программы,с которой вы работаете в данное время.Нап-
     ример,если вы нажимаете клавишу косой черты (/),то будете работать в ре-
     жиме ввода команд,когда программа ждет именно ввода команды.
money format - денежный формат - все числа заданы в формате де-
     нег,доллары и центы: 103.00.
my-tables  -  мои  таблицы - таблицы в ORACLE RDBMS,которые вы,текущий пользо-
     ватель системы SQL*CALC,можете извлекать и использовать.Вы можете получи-
     ть список этих таблиц нажав клавишу [Table].

number entry - цифровая запись - информация,которую вы помещае-
     те в ячейку в форме числа,с которым можно производить вычисления.

operating system - OC - набор команд и программ для работы с компьютером.Эти
     команды и программы выполняют различные базовые функции типа управления
     файловой системой,содержащей ваши программы.
operators  -  операторы - математические знаки типа + или * (для
     умножения),позволяющие производить вычисления.
options - опции - режимы,которые вы можете выбрать при установке ЭТ или при
     выполнении некоторых команд.Обычно опции представляются для каждой кома-
     нды slash.
ORACLE commands - команды ORACLE - набор slash команд для работы с таблицами
     из ORACLE RDBMS.При помощи эти команд вы можете войти в ORACLE RDBMS,про-
     смотреть таблицы доступных файлов,выполнить инструкции,которые вы ввели в
     ячейки SQL и установить некоторые опции.
ORACLE  RDBMS - The Relational Database Management System - сис-
     тема управления реляционной БД,которая используется с
     SQL*CALC и из которой вы можете извлечь данные для работы в ЭТ.
overflow - переполнение - ситуация,при которой данные,извлекаемые вами в ЭТ
     слишком велики для помещения в выделенное для них пространство.
overwrite - перезаписать - ввести другую запись вместо уже существующей в яче-
     йке.Вам не нужно стирать предыдущую запись перед вводом новой.

password - пароль - второе идентифицирующее слово (которое при вводе не появ-
     ляется на экране) для обеспечения защиты авторизованных программ.
pointing - указание - задание SQL*CALC источника информации,который вы хотите
     скопировать или переместить,а также места,где вы хотите что-либо сделать
     при помощи клавиш-стрелок,что предпочтительнее задания координат ячеек.
Print  command  - команда Print (печати) - набор команд,который
     позволяет вам вывести информацию на бумагу (или в дисковый файл).
prompt - приглашение - любой вопрос (слово или фраза),который
     требует ответа перед тем как программа продолжит работу.
prompt  line - строка приглашения - строка под строкой статуса в нижней части
     экрана,которая сообщает вам что нужно выбрать для дальнейшей работы.
protect  - защита - вы можете применить команду Range для защиты
     информации в некоторой ячейке от изменений.Эта ячейка станет
     защищенной до того как вы измените ее состояние.

Quit command - команда Quit - эта команда позволяет прервать работу с ЭТ в
     SQL*CALC и перейти в другую систему.Помните,что ваша текущая ЭТ не будет
     при этом сохранена автоматически; вам нужно использовать для ее сохране-
     ния команду /File Save,в противном случае данные будут потеряны.

range - диапазон - набор ячеек,заданный определенной командой,от одной ячейки,
     строки или колонки до прямоугольного блока ячеек,идентифицированного ад-
     ресами верхнего левого и нижнего правого углов.При установке печати ЭТ
     слово Range означает,что вы печатаете несколько ее страниц,а не только
     то,что выведено на экран.
Range command - команды Range - команды,воздействующие на диапазон ячеек начи-
     ная от одной и до прямоугольного блока.Например,команда Range Erase с ди-
     апазоном а1.s26 перекрывает блок ячеек начиная с А1 до S26.
range specification - спецификация диапазона - набор ячеек,перекрываемый зада-
     нной командой.Например,если вы хотите добавить объект в колонку В,строки
     с 5 по 9,то должны задать диапазон b5.b9.Спецификация диапазона может
     иметь двоеточие вместо запятой.
re-execute - переисполнить - приказать SQL*CALC выполнить коман-
     ду  снова обычно после некоторых изменений,сделанных вами в ин-
     формации,с которой вы работаете.
row - строка - пронумерованная строка в ЭТ.В SQL*CALC имеется до 8192 строк,в
      которые можно помещать информацию.

scroll - прокручивать - перемещать окно дисплея по ЭТ.Прокручивать можно вниз
     или вверх при помощи клавиш [PageUp] или [PageDoun],а также клавиш-стре-
     лок,клавиш [Home],[End].
slash  command - команды slash - разные наборы общих команд,ко-
     торые есть в SQL*CALC.Эти команды сгруппированы в подгруппы:
     Worksheet,Range,Copy,Layout,File,Print,Oracle,Quit.
sort - сортировать - упорядочить набор данных в алфавитном или
     нумерованном порядке.
spill-over  - перекрытие - часть записи ячейки,которая перекры-
     вает следующую за ней ячейку.Такое явление наблюдается только
     при пустой следующей ячейке,в противном случае запись обрезается.
SQL-cell - ячейка SQL - ячейка,в которой помещен оператор SQL.
SQL  statement - оператор SQL - команда,всегда начинающаяся с
     символа $,предназначенная для ввода данных в электронную табли-
     цу или изменения таблиц ORACLE RDBMS.
SQL SELECT statement - оператор SQL SELECT - команда,начинающаяся с $,приказы-
     вающая SQL*CALC извлечь заданный набор данных из таблиц ORACLE RDBMS и
     поместить его в ЭТ.Вы можете перередактировать операторы SQL для нужной
     обработки данных.
statement - оператор - набор инструкций программы,который может включать в се-
     бя откуда брать информацию,ее вид,обработку нестандартных ситуаций и так
     далее.
status line - строка статуса - строка в нижней части экрана,по-
     казывающая текущую ячейку и информацию,которая в ней есть.Там
     есть также информация об ошибках.
string - строчка - непрерывный набор символов,например,слово.
switching  windows - переключение окон - перемещение текущей
     ячейки из одного окна в другое при их наличии на экране.для пе-
     реключения окон нужно применить ку [Window].
system prompt - приглашение системы - символ слева на экране при
     ожидании компьютером вашего ввода.(На IBM PC он может выглядеть так: А>.)

table - таблица - набор строк и колонок,содержащий взаимосвязанный набор
     информации.
terminal - терминал - экран и клавиатура компьютера.
text  entry  - запись - информация,помещенная в ячейку или в их
     диапазон,в основном в виде текста.
title - титул - название сверху или сбоку ЭТ,идентифицирующее строку или
     колонку.
title  lock - блокировка титула - установка опций электронной
     таблицы так,что при прокрутке титулы будут оставаться на экране.
total bar - общая черта - линия вдоль экрана,отделяющая отдель-
     ные записи от общего результата.

underflow - недокомплект - ситуация,в которой в большое задан-
     ное пространство помещается мало информации.
unprotect - снятие защиты с ячейки или их набора.
uper case - большие буквы.
user identification - идентификатор пользователя - идентификатор или N,который
     вам присвоен для уполномачивания вас на доступ к таблицам ORACLE RDBMS
     при работе SQL*CALC.Вы должны ввести ваш идентификатор перед доступом к
     данным ORACLE RDBMS.
utilities - утилиты - команды или операторы,работающие на уровне OC (например,
     команда для стирания файла).Можно использовать некоторые утилиты OC при
     помощи команды slash /File Utilities.

value - значение - число,которое вы ввели в ЭТ
     и можете производить с ним вычисления,или число как результат
     операции.Число в титуле,например,1985,не является значением.

window  area - область окна - часть ЭТ,которую
    вы можете наблюдать на экране компьютера.
worksheet - ЭТ - набор колонок и строк для хранения информации в SQL*CALC.
Worksheet commands - команды Worksheet - команды,которые воздействуют на всю
    ЭТ.Например,команда /Worksheet Erase сотрет всю ЭТ,с которой вы работаете.

KOAP Open Portal 2000