Текущее время: Пн, июл 21 2025, 14:59

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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