Текущее время: Вт, июл 22 2025, 12:07

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 11 ] 
Автор Сообщение
 Заголовок сообщения: Самый общий вопрос по ABAP
СообщениеДобавлено: Пн, дек 18 2006, 09:10 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, дек 07 2006, 16:32
Сообщения: 131
Откуда: Украина, Мариуполь
Пол: Мужской
Помогите определиться с определением ТРАНЗАКЦИИ! Я всю жизнь думал, что:

Транзакция - совокупность операций над данными, которая, с точки зрения обработки данных, либо выполняется полностью, либо совсем не выполняется.

А в R/3 под этим понимают что-то совершенно другое. Это некая точка входа в ABAP программу.

Иак что же такое эта загадочная ТРАНЗАКЦИЯ с точки зрения R/3? :shock:

_________________
я в пути и нет у меня никаких тревог и забот. одинокая лодка моя рассекая волну плывет...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 18 2006, 09:38 
Директор
Директор

Зарегистрирован:
Пт, окт 07 2005, 09:10
Сообщения: 752
Откуда: 4.6C
Пол: Мужской
Цитата:
Database Logical Unit of Work (LUW)

A database LUW is the mechanism used by the database to ensure that its data is always consistent.

SAP LUW

An SAP LUW is a logical unit consisting of dialog steps, whose changes are written to the database in a single database LUW.

SAP Transaction

An SAP transaction is an application program that you start using a transaction code. It may contain one or more SAP LUWs.

IМНО, это расширенное понятие транзакции БД, но основное назначение тоже - обеспечить корректную запись данных. Думаю это что-то типа микросреды для комфортного существования программы. :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 18 2006, 09:42 
Младший специалист
Младший специалист

Зарегистрирован:
Пн, окт 03 2005, 10:16
Сообщения: 74
С точки зрения БД, транзакция - запись информации по принципу "все или ничего". Грубо говоря :)

А в R/3 это почти тоже самое. Например при заведении нового заказа или любого другого бизнес-объекта Вы заполняете поля на экранах и нажимаете "сохранить". Данные об объекте обычно хранятся в нескольких таблицах, поэтому система должна записать их, не нарушив целостности. Если пытаться завести объект в системе самому, занося данные в необходимые таблички, то можно что-нить упустить.

Т.е. я понимаю SAP транзакцию, как обычную транзакцию, но на уровне бизнесс-объектов.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Самый общий вопрос по ABAP
СообщениеДобавлено: Пн, дек 18 2006, 09:42 
Менеджер
Менеджер

Зарегистрирован:
Вт, авг 17 2004, 13:14
Сообщения: 664
Откуда: Москва
Пол: Мужской
Согласен, SAP попутал термины малость. Саповская транзакция - просто вызов программы, которая может и вовсе не пытаться изменить данные.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 18 2006, 10:07 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, дек 07 2006, 16:32
Сообщения: 131
Откуда: Украина, Мариуполь
Пол: Мужской
Тогда объясните пожалуйста как одна программа может иметь несколько кодов транзакций?
Например я могу создать программу ZA01 и с ней могут быть связаны 2 транзакции: Z_A01_A и Z_A01_B, которые просто будут запускать ее на разных этапах выполнения :shock:

_________________
я в пути и нет у меня никаких тревог и забот. одинокая лодка моя рассекая волну плывет...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 18 2006, 10:47 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Пт, ноя 03 2006, 09:36
Сообщения: 15
См. постинг Авала... Транзакция в САПе это п/п с транзакционным кодом, а LUW включает в себя принцип "классической транзакции" все или ничего. Как и написал Авал, одна транзакция может включать несколько LUW.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 18 2006, 11:17 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
r00xus написал:
Тогда объясните пожалуйста как одна программа может иметь несколько кодов транзакций?
Например я могу создать программу ZA01 и с ней могут быть связаны 2 транзакции: Z_A01_A и Z_A01_B, которые просто будут запускать ее на разных этапах выполнения :shock:

Нет, не на разных этапах выполнения - запуск транзакции означает создание ещё одной внутренней сессии (со своей памятью под данные программ и ФМ и пр.) в рамках внешней сессии. Программа может проанализировать в рамках какой транзакции она выполняется и модифицировать своё поведение (например pa20 pa30), а может и не анализировать.

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 18 2006, 13:57 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Чт, дек 07 2006, 16:32
Сообщения: 131
Откуда: Украина, Мариуполь
Пол: Мужской
Ок. Начинаю раздупляться. Транзакцию следует понимать как экземпляр программы или ....
А может ли быть так, что одна транзакция запускает несколько программ. Это вполне вписывается в классическое определение. Правда за скромный период работы с R/3 (11 дней) я пока такого не замечал. Может кто-нибудь подскажет яркий пример на базе стандартных программ.

P.S.: Вы уж простите за назойливость :oops: ...

_________________
я в пути и нет у меня никаких тревог и забот. одинокая лодка моя рассекая волну плывет...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, дек 18 2006, 14:18 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, сен 07 2004, 17:47
Сообщения: 2988
r00xus написал:
Ок. Начинаю раздупляться. Транзакцию следует понимать как экземпляр программы или ....
А может ли быть так, что одна транзакция запускает несколько программ. Это вполне вписывается в классическое определение. Правда за скромный период работы с R/3 (11 дней) я пока такого не замечал. Может кто-нибудь подскажет яркий пример на базе стандартных программ.

P.S.: Вы уж простите за назойливость :oops: ...
Что касается классического определения - то саповская транзакция таковой должна являться для конечного пользователя, а реализация этого возлагается на программиста.
Запуск транзакции означает запуск одной программы, но эта программа уже из себя вызывать как другие программы (submit), так и другие транзакции (call transaction).

_________________
"После" - не значит "вследствие"


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, дек 19 2006, 09:15 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, ноя 23 2005, 13:37
Сообщения: 1805
Откуда: ECC 6.0
Пол: Мужской
r00xus написал:
P.S.: Вы уж простите за назойливость :oops: ...


Попробуйте создать новую транзакцию, посмотрите, какие виды транзакций бывают, какие параметры там задаются, понажимайте F1 на этих параметрах.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, дек 19 2006, 09:36 
Президент
Президент
Аватара пользователя

Зарегистрирован:
Ср, янв 12 2005, 13:39
Сообщения: 2811
Откуда: замкадыш
Было такое объяснение транзакции "для чайников".

Вам нужно дать взятку трём чиновникам (снизу вверх "по лестнице").
Заму зама главного вы даете 3000$
Заму главного вы даете 5000$
Главному вы пытаетесь дать 10000$, но он их не берет
Вы не решили свою проблему и потеряли 8000$,
А вот если бы у вас была транзакция, то первые двое отдали бы вам деньги.
:)

Сорри за оффтоп.

_________________
Что бы выловить случайную ошибку нужно добиться устойчивости её появления.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB