Главная страница
Навигация по странице:

  • Phone Book Table Name Address Phone

  • Report Based on Relationship Between 2 Tables Name Email Address Phone

  • Internet Directory Table Name Email Address

  • Рис. 3.3.

  • Employee Name Social Security Phone Dept

  • Dept Department

  • Рис. 3.7.

  • Кстати

  • В Будет ли бизнес-логика, сконфигурированная в SAP-системе, функ

  • Работа важная шо писец. George W. Anderson, Danielle Laroccasap in 24 Hours


    Скачать 1 Mb.
    НазваниеGeorge W. Anderson, Danielle Laroccasap in 24 Hours
    АнкорРабота важная шо писец
    Дата03.04.2022
    Размер1 Mb.
    Формат файлаpdf
    Имя файлаsample.pdf
    ТипКнига
    #439390
    страница7 из 7
    1   2   3   4   5   6   7
    ТАБЛИЦА 3.1. Базы данных, поддерживаемые SAP
    Партнер
    Веб-сайт
    Microsoft SQL Server www.microsoft.com www.mysgl.com
    MySQL MaxDB
    www.mysgl.com
    IBM DB2 (различные версии)
    www.ibm.com
    Oracle www.oracle.com
    Важно отметить, что не все разработчики баз данных и не все версии продуктов поддерживаются SAP. SAP стремится работать с лидерами рынка, периодически добавляя и удаляя поддержку продуктов для определенных производителей. При этом они не только ограничивают количество специфических настроек баз дан- ных, но также обеспечивают IT-специалистам гибкость и возможность выбора, предоставляют ключи для успешного решения задач по разворачиванию и под- держке SAP-решений.
    Phone Book Table
    Name
    Address
    Phone
    Bailey Workman
    101 Pine Street, Willford, NY 11011 555-555-9878
    Patricia Spencer
    86 Apple Court, Friendly, NY 23465 555-555-6321
    Jeanette Williams
    3003 11th Street, New York, NY 14454 555-555-7785
    Timothy James
    2 Waterview Way, Wantagh, NY 11202 555-555-1479
    Nicole Kaupp
    23 Fresdale Rd, Freeport, NY 11256 555-555-0036
    База данных = табли- цы, поля и строки
    Таблицы
    Поля (колонки)
    Записи (строки)

    ЧАС 3.
    Основы базы данных
    35
    Система управления реляционной базой данных (RDBMS)
    База данных SAP содержит буквально тысячи таблиц, в которых хранится ин- формация. Некоторые продукты, такие как ECC и R/3, содержат более 30 000 таблиц, тогда как другие продукты, такие как CRM, могут содержать немногим более 10 000 таблиц. Несмотря на количество этих таблиц, все они связаны друг с другом через установленные отношения. Эта связь многочисленных таблиц че- рез отношения образует то, что известно как система управления реляционной базой данных [Relational Database Management System (RDBMS)].
    Очень важное преимущество этой системы в том, что она исключает избыточ- ность. Для лучшего понимания этого давайте посмотрим на концепцию этой сис- темы, используя пример с телефонной книгой. В этом примере телефонная книга представляет собой таблицу, которая хранит имена, адреса и телефонные номе- ра всех жителей вашего города. Представим, что у вас есть еще одна книга того же города, в которой хранятся адреса электронной почты и веб-сайты вместе с другими данными. Теперь у вас есть две таблицы, которые хранят довольно много одной и той же информации, и в то же время вторая таблица содержит инфор- мацию, которой нет в первой.
    Допустим, вы хотите создать отчет, который будет содержать все имена и номе- ра телефонов из первой таблицы, и включить в него адреса электронной почты, извлекая их из второй таблицы. Эти данные хранятся в двух разных таблицах и, следовательно, возникает проблема, поскольку если вы перенесете всю инфор- мацию из второй таблицы в первую, то получится две таблицы, хранящие одну и ту же информацию.
    Кроме того, будет существовать избыточность и, следовательно, трата ресурсов, что также сделает данную структуру громоздкой для поддержки. Допустим, что чей-то физический адрес изменился, что происходит довольно часто; в этом слу- чае вам необходимо будет изменить данные в обеих таблицах. Использование системы управления реляционной базой данных (RDBMS) решает данную про- блему, так как таблицы и, следовательно, их дискретные данные связаны друг с другом посредством специальных отношений внутри базы данных. Например, обе таблицы содержат столбец (или поле), содержащий имя человека. Следова- тельно, в системе управления реляционной базой данных (RDBMS) эти две таб- лицы могут быть связаны по этому или любому другому полю, общему для обеих таблиц (см. рис. 3.2).
    Первичный ключ
    В системе управления реляционной базой данных (RDBMS) все таблицы базы данных должны содержать уникальное поле, которое индивидуально отличает каждую конкретную запись от всех других записей в базе данных. Это уникальное поле называется первичным ключом (primary key) и состоит из одного или более полей, которые делают каждую запись в базе данных уникальной.

    SAP за 24 часа
    36
    Рис. 3.2. Использование системы управления реляционной базой данных (RDBMS) для связи таблиц на примере телефонной книги
    В качестве примера первичного ключа будет использоваться функциональная об- ласть SAP R/3 Human Resources (Управление персоналом). Модуль Human Resources хранит данные обо всех сотрудниках компании. Некоторые из сотрудников будут иметь один и тот же номер отдела, другие – одно и то же название занимаемой должности, а третьи – одинаковую заработную плату. Это значит, что ни одна из этих характеристик не будет идеальным кандидатом на первичный ключ. Для того, чтобы уникально идентифицировать каждого сотрудника в компании, находящей- ся на территории США, в качестве первичного ключа могло бы быть использовано поле, содержащее номер социального страхования (Social Security number) со- трудника, – по той причине, что этот номер действительно является уникальным и мог бы послужить идеальным кандидатом на первичный ключ в таблице, содержа- щей информацию обо всех сотрудниках вашей компании. На рис. 3.3 приводится пример двух различных таблиц и их уникальные первичные ключи.
    Phone Book Table
    Name
    Address
    Phone
    Bailey Workman
    101 Pine Street, Willford, NY 11011 555-555-9878
    Patricia Spencer
    86 Apple Court, Friendly, NY 23465 555-555-6321
    Jeanette Williams
    3003 11th Street, New York, NY 14454 555-555-7785
    Timothy James
    2 Waterview Way, Wantagh, NY 11202 555-555-1479
    Nicole Kaupp
    23 Fresdale Rd, Freeport, NY 11256 555-555-0036
    Report Based on Relationship Between 2 Tables
    Name
    Email Address
    Phone
    Bailey Workman
    Bworkman@Zucker.com
    555-555-9878
    Patricia Spencer
    Spenie@prodigy.inc
    555-555-6321
    Jeanette Williams
    LMT@Infotype.com
    555-555-7785
    Timothy James
    Tsig@Pat.com
    555-555-1479
    Nicole Kaupp
    Kaupp.Nicole@Airline.com
    555-555-0036
    Internet Directory Table
    Name
    Email Address
    Bailey Workman
    Bworkman@Zucker.com
    Patricia Spencer
    Spenie@prodigy.inc
    Jeanette Williams
    LMT@Infotype.com
    Timothy James
    Tsig@Pat.com
    Nicole Kaupp
    Kaupp.Nicole@Airline.com
    Both Tables
    Contain a Name
    Field.
    Based on This Relationship, a
    Report Can Be Created with
    Output from both Tables
    RELATIONSHIP
    Отношение
    Обе таблицы содер- жат поле «Имя»
    На основании этого отношения отчет может быть создан выво- дом данных из обеих таблиц
    Отчет, основанный на отноше- нии между двумя таблицами
    Рис. 3.3. Первичный ключ в таблице сотрудников и таблице отделов
    Dept#
    Department
    10002
    Information Technology
    10003
    Shipping and Receiving
    10004
    Mail Room
    10005
    Returns Processing
    10006
    Human Resources
    Employee Name
    Social Security #
    Phone
    Dept#
    Bailey Workman
    555-555-9878 10002
    Patricia Spencer
    555-555-6321 10002
    Jeanette Williams
    555-555-7785 10003
    Timothy James
    555-555-1479 10004
    Nicole Kaupp
    708-88-9639 030-74-8520 020-87-8852 000-56-9636 000-56-9636 555-555-0036 10005
    Поле первичного ключа
    Таблица сотрудников.
    Таблица отделов.
    Две разные таблицы, каждая из которых – с уникальным первич- ным ключом

    ЧАС 3.
    Основы базы данных
    37
    Внешний ключ
    Вы используете поле первичного ключа в одной таблице для связи ее с другими таблицами. Поле общего канала взаимодействия в другой таблице, как правило, не является первичным ключом в этой таблице; такое поле называется внешним ключом (foreign key).
    Давайте снова используем пример с модулем Human Resources (Управление персоналом). Имеется таблица сотрудников, в которой хранятся основные дан- ные о сотрудниках, с первичным ключом, определенным как «Номер социаль- ного страхования»; и имеется таблица отделов, в которой записаны номера и названия отделов, и первичным ключом для этой таблицы является номер отдела
    (см. рис. 3.3). В этих двух таблицах присутствует общее поле «Номер отдела». В таблице сотрудников номер отдела является внешним ключом, соединяющим ее с таблицей отделов (см. рис. 3.4).
    Рис. 3.4. Номера отделов в таблице сотрудников сверяются с проверочной табли- цей путем использования отношения по внешнему ключу
    Внешний ключ используется для установления согласованности между табли- цами. Пример такой согласованности может быть следующим: допустим, вы не хотите, чтобы сотрудник был внесен в систему с номером отдела, которого в настоящее время не существует в хранящей номера отделов таблице базы дан- ных. Использование отношения по внешнему ключу служит для проверки того, что вводимый номер существует в таблице отделов, как показано на рис. 3.4, и запрета ввода любых записей, которых не существует в таблице отделов. В этом случае все данные в ваших таблицах будут согласованы.
    Нарушение проверочной таблицы
    Ваша база данных SAP не будет принимать данные в какое-либо поле, содержа- щее внешний ключ к проверочной таблице, если вводимые данные отсутствуют в проверочной таблице (см. рис. 3.5).
    Dept#
    Department
    10002
    Information Technology
    10003
    Shipping and Receiving
    10004
    Mail Room
    10005
    Returns Processing
    10006
    Human Resources
    Employee Name
    Social Security #
    Phone
    Dept#
    Bailey Workman
    555-555-9878 10002
    Patricia Spencer
    555-555-6321 10002
    Jeanette Williams
    555-555-7785 10003
    Timothy James
    555-555-1479 10004
    Nicole Kaupp
    708-88-9639 030-74-8520 020-87-8852 000-56-9636 000-56-9636 555-555-0036 10005
    Поле первичного ключа
    Поле первичного ключа
    Проверочная таблица
    Таблица отделов
    Запись в таблице внешнего ключа
    (таблица сотрудников) ссылается на запись в проверочной таблице (таб- лица отделов)
    Таблица внешнего ключа
    Таблица сотрудников
    Поле внешнего ключа

    SAP за 24 часа
    38
    Рис. 3.5. На экране персональных данных персонала в поле «Семейное положение» будут приниматься только те элементы списка, которые содержатся в про- верочной таблице
    В этом примере необходимо ввести данные о семейном положении сотрудника.
    Возможные значения в проверочной таблице выведены в маленьком окне. Если вы вводите значение, которого нет среди существующих элементов списка про- верочной таблицы, то вы получите сообщение о нарушении проверочной табли- цы, похожее на то, которое изображено на рис. 3.6.
    Рис. 3.6. Сообщение о нарушении проверочной таблицы появляется при вводе в поле данных, которых не существует в проверочной таблице для этого поля
    Сообщение об ошибке будет появляться всякий раз, когда вы вводите значение, которого не существует среди элементов списка проверочной таблицы.
    Понятия/концепции базы данных
    SAP-система содержит много типов конструкций и структур в рамках R/3 (или другого SAP-компонента) Data Dictionary (DDIC) [R/3 Словарь данных]. Боль-
    Существующие элементы списка для поля «Семей- ное положение» в проверочной таблице

    ЧАС 3.
    Основы базы данных
    39
    шинство из этих конструктивных элементов имеют тенденцию становиться весь- ма специализированными с технической точки зрения. Тем не менее, в часе 17
    «Словарь данных ABAP и репозитарий» будет дан обзор многих этих структурных компонентов и связанных с ними понятий. Темы, рассматриваемые далее, дают представление о том, как в целом разрабатываются различные элементы базы данных с нацеленностью, в конечном итоге, на увеличение производительности и расширяемости системы.
    Индексы базы данных
    Индексы базы данных используются для увеличения скорости получения данных из таблиц (см. рис. 3.7). Наилучшим образом индекс может быть описан как ко- пия таблицы базы данных, уменьшенная до поля ключа. Данные в этой уменьшен- ной копии отсортированы согласно нескольким предопределенным критериям, позволяющим обеспечить быстрый доступ к данным. Не все поля из скопирован- ной таблицы существуют в индексе, а индекс содержит указатель на соответству- ющую запись в фактической таблице.
    Рис. 3.7. Индексы базы данных SAP используются для увеличения скорости получе- ния данных из таблиц в базе данных
    Кстати
    В часе 17 будет предоставлена более подробная информация о базах
    данных и таблицах, и мы сможем ознакомимся с SAP Data Dictionary
    (Словарь данных SAP).
    Прозрачные таблицы
    SAP использует еще одну концепцию под названием «прозрачные таблицы», которые представляют собой таблицы базы данных SAP, в которых данные со- держатся только во время рабочего цикла. Прозрачная таблица создается авто- матически в базе данных, когда таблица активируется в словаре данных ABAP/4
    (ABAP/4 Data Dictionary). Эта прозрачная таблица содержит такое же имя, как и таблица базы данных в словаре ABAP/4 (ABAP/4 Dictionary). Каждое из ее полей содержит такое же имя, как и его дубликат в базе данных, хотя последователь- ность полей может меняться. Изменяющаяся последовательность полей дает возможность вставлять новые поля в таблицу без необходимости ее конверти- рования; все это позволяет ускорить доступ к данным во время рабочего цикла.
    Индекс.
    Таблица.
    Индекс.
    Табица сотрудников.
    Доступ осуществляется к индексу и указатель используется для определения расположения фактической записи в таблице

    SAP за 24 часа
    40
    Кстати
    Концепция прозрачных таблиц является довольно специфичной с тех-
    нической точки зрения и в большей степени относится к вашим ABAP/4-
    программистам. Данное понятие рассматривается здесь только для
    того, чтобы дать базовое представление об этом термине.
    Структуры базы данных
    Структуры базы данных (Database Structures) – еще один достаточно важный тех- нический термин. Вам необходимо запомнить, что структуры базы данных – это группа внутренних полей, которые логически сочетаются друг с другом. Струк- туры активируются и определяются в словаре данных ABAP/4 (ABAP/4 Data Dic-
    tionary) и содержат только временные данные – во время выполнения программ.
    Структуры отличаются от таблиц базы данных на основании следующих трех кри- териев:
     Структура не содержит и не отражает связанных таблиц словаря данных
    АВАР/4 (ABAP/4 Data Dictionary).
     Структуры не содержат первичных ключей.
     Структуры не имеют никаких технических свойств, таких как класс, размер, категория или спецификации буферизации.
    Резюме
    Набор SAP-приложений основывается на системе управления реляционными базами данных (RDBMS). Сервер баз данных является основным хранилищем для всех программ и данных, где данные содержатся в виде таблиц баз данных и индексов. В этом часе вы изучили структуру базы данных и узнали, из чего она состоит. Понятия, раскрытые в этом часе, являются ключом к пониманию внут- реннего функционирования SAP-системы и основой для нескольких следующих часов.
    Вопрос – ответ
    В Будет ли бизнес-логика, сконфигурированная в SAP-системе, функ-
    ционировать таким же образом, независимо от используемой базы
    данных (например, Oracle, DB2, SQL Server и т. д.)?
    О SAP-бизнес-логика сконфигурирована в системных функциях вне зависимос- ти от торговой марки или версии базы данных, которая хранит и управляет данными. Несомненно, что конкретная марка или версия базы данных долж- на, в первую очередь, поддерживаться процессом инсталляции программно- го обеспечения SAP.
    В Позволит ли SAP-система создать новую запись, которая имеет
    тот же первичный ключ, что и еще одна запись?
    О Нет. SAP-система не допускает создания новой записи с первичным ключом, который уже существует.
    1   2   3   4   5   6   7


    написать администратору сайта