|
Проведение документа на клиенте | ☑ | ||
---|---|---|---|---|
0
mjyta
14.12.15
✎
19:44
|
Готовлюсь к экзамену 1С, возник вопрос:
можно ли проведение документа выполнять на клиенте а не на сервере? варианты ответов: 1) можно но только при работе в ТОЛСТОМ клиенте 2) можно, перед процедурой "обработка проведения" поставить директиву "&Наклиенте" 3) можно, надо разместить процедуру "обработка проведения" в модуле формы документа 4) Нельзя |
|||
60
H A D G E H O G s
14.12.15
✎
22:41
|
(50) Клиентом к Тлстому клиенту можно подключиться через COM -соединение (прости Гейст 1С за ее терминологию, сейчас нубы все напутают и обвинят меня в некомпетенции). Толстый клиент поработает как COM - сервер, но это совсем другая история.
|
|||
61
Jump
14.12.15
✎
22:41
|
Толстый клиент может работать самостоятельно хоть с файловой базой, хоть с серверной.
Но может и пользоваться сервером, тут уже зависит от конфигурации, как программист напишет так и будет. |
|||
62
PR третий
14.12.15
✎
22:41
|
(57) Что за бред? То есть серверного кода вообще не существует в принципе? Любой код — это не серверный код, а ВЫЗОВ серверного кода?
|
|||
63
PR третий
14.12.15
✎
22:42
|
(58) Причем здесь файловый сервер? Я на скуле тестировал.
|
|||
64
H A D G E H O G s
14.12.15
✎
22:42
|
(62) Внимательней следите за мыслью.
|
|||
65
Jump
14.12.15
✎
22:43
|
(60) Это действительно другая история, ибо через ком можно и к экселю с вордом подключиться.
Это просто технология прямого обмена данными между программами. |
|||
66
H A D G E H O G s
14.12.15
✎
22:43
|
Ладно, вы можете там дальше писать, что я нес бред, мне немного некогда.
Роман в очередной раз поразил меня, наверное это потертости от красного кожаного плаща. |
|||
67
H A D G E H O G s
14.12.15
✎
22:44
|
(65) Ну я так - балуюсь.
|
|||
68
PR третий
14.12.15
✎
22:44
|
(59) Может. Но только когда база файловая. Потому что тогда сервера нет (его роль играет все тот же толстый клиент), а серверный код есть.
|
|||
69
Garykom
гуру
14.12.15
✎
22:44
|
(65) эээ тогда клиент-сервер это тогда тоже "просто технология прямого обмена данными между программами."
|
|||
70
Jump
14.12.15
✎
22:44
|
(63) При том что толстый клиент способен работать и без скуля.
Есть скуль - у него есть выбор самому проводить, или на сервере. Нету скуля - нету выбора, только самому. Если бы толстый клиент не мог сам проводить, значит он не смог бы работать с файловым вариантом. А отсюда следует вариант ответа - 1 |
|||
71
vde69
14.12.15
✎
22:46
|
все банально, ставьте в процедуру
#Если Сервер Тогда сообщить(1); #КонецЕсли я утверждаю, что будет ошибка :) |
|||
72
Jump
14.12.15
✎
22:46
|
(68) Ну если может значит вариант ответа 1.
И объясните мне пожалуйста что такое серверный код? |
|||
73
vde69
14.12.15
✎
22:46
|
(71) в процедура проведения
|
|||
74
PR третий
14.12.15
✎
22:47
|
(57) Типа ты утверждаешь, что вызов серверного кода (что это за зверь, кстати, такой, тогда) возможен на клиенте, то есть выполнение будет тоже на клиенте?
|
|||
75
PR третий
14.12.15
✎
22:48
|
(71) Что это вдруг? На сервере можно сообщить вроде как всегда было.
|
|||
76
vde69
14.12.15
✎
22:48
|
(74) серверный код "компилируется", клиентский - нет.
а вообще директивами определить легко |
|||
77
PR третий
14.12.15
✎
22:49
|
(70) Что за бред вообще? Какой-то набор притягиваний ушей к заднице.
|
|||
78
Jump
14.12.15
✎
22:49
|
(76)Если сервер написать на скриптовом языке, то он будет выполнять клиентский код?
|
|||
79
vde69
14.12.15
✎
22:49
|
(75) ну тогда посмотреть напишет или нет
|
|||
80
PR третий
14.12.15
✎
22:50
|
(72) Толстый клиент <> Файловая база.
|
|||
81
Jump
14.12.15
✎
22:50
|
(77) Какое притягивание ушей?
Вот у вас бред - какой то серверный код придумали. Что это за хрень непонятная? Я так понимаю есть код, если он выполняется на сервере, значит он серверный. Один и тот же код может быть серверным и клиентским. |
|||
82
PR третий
14.12.15
✎
22:51
|
(79) Думаю, что не напишет
|
|||
83
Jump
14.12.15
✎
22:52
|
(80) А я разве это утверждал?
Толстый клиент может работать и с файловой базой и с сервером. Поэтому он может выполнять проведение сам, или передавать это дело серверу. Вопрос был - можно ли выполнить проведение на толстом клиенте. Ответ - можно. |
|||
84
PR третий
14.12.15
✎
22:52
|
(81) Серверный код придумал Дима в (57) :))
|
|||
85
Jump
14.12.15
✎
22:53
|
(84) Ну тогда извиняюсь.
|
|||
86
EvgeniuXP
14.12.15
✎
22:53
|
все специалисты - на пересдачу :)
|
|||
87
PR третий
14.12.15
✎
22:53
|
+(84) До этого "серверный код" означало ровно то, что код выполняется на сервере :))
|
|||
88
H A D G E H O G s
14.12.15
✎
22:54
|
(81)
"Один и тот же код может быть серверным и клиентским." Это 1С вас запутала и разбаловала клиент-серверными ОМ. (84) Читай ВНИМАТЕЛЬНО на какой твой бред я давал свой каммент в (57). |
|||
89
vde69
14.12.15
✎
22:54
|
(81) серверный код выполняется в контексте и окружения сервера, в случае с файловой толстой клиент и сервер - один физический процесс
|
|||
90
H A D G E H O G s
14.12.15
✎
22:54
|
(86) Я об этом еще в (1) намекал.
|
|||
91
PR третий
14.12.15
✎
22:56
|
(83) Логично. Получается можно. С учетом (35).
Потому 1С, видимо и придумала четкое разделение на клиент и сервер, чтобы прогеры мучались, а не движок. |
|||
92
H A D G E H O G s
14.12.15
✎
22:57
|
(91) "Потому 1С, видимо и придумала четкое разделение на клиент и сервер"
До появления Управляемого приложения о разделении на клиент и сервер не знали 99.5% программистов. |
|||
93
GROOVY
14.12.15
✎
22:58
|
(0) Кстати, откуда вопрос? Это такой вопрос на Профа? Смысл в нем какой?
|
|||
94
vde69
14.12.15
✎
22:59
|
провел эксперемент, база серверная, толстый клиент
Процедура ОбработкаПроведения(Отказ, Режим) Перем Заголовок, СтруктураШапкиДокумента, ТаблицыДвижений; #Если Сервер Тогда Сообщить("--"); #КонецЕсли #Если Клиент Тогда Сообщить("++"); #КонецЕсли -------------------------------------------------------- получил "++" |
|||
95
PR третий
14.12.15
✎
23:01
|
(88) Я и говорю, какой-то вызов серверного кода.
А замер производительности показал, что это самый что ни на есть серверный код, а не какой-то непонятный вызов серверного кода. Не? |
|||
96
Garykom
гуру
14.12.15
✎
23:01
|
(94) УФ?
|
|||
97
vde69
14.12.15
✎
23:01
|
(96) обычные формы
|
|||
98
PR третий
14.12.15
✎
23:01
|
(92) Я как бэ про это и говорю.
|
|||
99
Garykom
гуру
14.12.15
✎
23:02
|
(97) плиз огласите все меню, в УФ что будет?
|
|||
100
PR третий
14.12.15
✎
23:02
|
(96) Какие УФ в толстом клиенте?
|
|||
101
PR третий
14.12.15
✎
23:03
|
(99) Вроде бы в УФ обработка проведения на сервере
|
|||
102
Garykom
гуру
14.12.15
✎
23:05
|
(100) эээ?
|
|||
103
GROOVY
14.12.15
✎
23:06
|
(100) https://goo.gl/Ed4VDG
|
|||
104
PR третий
14.12.15
✎
23:06
|
(102) А, или там можно вроде бы по галочке использовать. Что, впрочем, ничего не меняет. Клиент-то все одно толстый.
|
|||
105
GROOVY
14.12.15
✎
23:07
|
По ходу тут мало кто представляет что такое обычное приложение и управляемое, чем формы обычные от управляемых отличаются. :)
|
|||
106
PR третий
14.12.15
✎
23:08
|
(103) А, блин, там же есть такая шляпа. Никогда не работал с такой хренью вроде. Как-то сразу на тонкий клиент с УФ перешел :))
|
|||
107
GROOVY
14.12.15
✎
23:08
|
Если что, в толстом клиенте можно УФ использовать.
|
|||
108
H A D G E H O G s
14.12.15
✎
23:09
|
(94) жесть
|
|||
109
PR третий
14.12.15
✎
23:09
|
(105) Что такое обычное приложение и управляемое да, это не очень прозрачно. Видимо, жестким указанием того, где должен выполняться код.
А формы обычные от управляемых отличаются тем, что управляемые строятся по декларативному описанию. |
|||
110
vde69
14.12.15
✎
23:10
|
(108) я честно говоря не ожидал такого результата, и не понимаю почему сделано именно так
|
|||
111
GROOVY
14.12.15
✎
23:12
|
(110) Проведение без формы попробуй запустить.
|
|||
112
H A D G E H O G s
14.12.15
✎
23:12
|
(110) Я честно не ожидал, что ты таким макаром будешь смотреть где выполняется код
|
|||
113
H A D G E H O G s
14.12.15
✎
23:12
|
(112) я вот к этому говорю, что жесть.
|
|||
114
PR третий
14.12.15
✎
23:14
|
(110) Потому что в толстом клиенте все, для чего не указано жестко выполнять на сервере, выполняется на клиенте, периодически гоняя на сервер всякие данные для записи в базу.
Неэффективно, короче. Эффективнее сразу все делать на сервере. |
|||
115
Garykom
гуру
14.12.15
✎
23:14
|
(109) а потом, http://risovach.ru/kartinka/9500509
|
|||
116
PR третий
14.12.15
✎
23:14
|
(111) Форма всего-лишь вызывает проведение.
|
|||
117
PR третий
14.12.15
✎
23:15
|
(112) А что такого, нормально :)) Слабенький ты какой-то, Дим :))
http://cdn.fishki.net/upload/post/201512/12/1772635/3_18.jpg |
|||
118
RomanYS
15.12.15
✎
00:06
|
(105) Это очевидный факт. Но вопрос здесь совсем не про формы.
|
|||
119
RomanYS
15.12.15
✎
00:14
|
(99) Предположу, что зависимость тут не от УФ/ОФ или УП/ОП, а всё-таки от толстого/тонкого клиента
|
|||
120
RomanYS
15.12.15
✎
00:17
|
(111) Причем здесь формы? Если проведение будет вызвано на (толстом) клиенте, то и выполняться оно будет на клиенте.
|
|||
121
Dimasik2007
15.12.15
✎
00:33
|
Подпишусь, интересно :)
|
|||
122
hhhh
15.12.15
✎
06:45
|
(120) а если оно вызвано из серверной процедуры формы? &НаСкрвере ??
|
|||
123
Пикчер
15.12.15
✎
09:38
|
(0) постановка вопроса странная. Можно ли проведение выполнЯть в толстом клиенте. Можно начать. Проведение это запись в базу объекта и движений в транзакции. Их нельзя сделать с клиента по определению трехзвенной структуры.
Если вопрос серьезный - то ответ 4. Если поверхностный, то ответ 1. (109) вопрос армянскому радио - почему Управляемые формы называются управляемыми - потому что ими нельзя управлять |
|||
124
yukon
15.12.15
✎
10:42
|
(0) Вопрос с подковыркой.
Что считать местом проведения документа? Ответ - место где вызывается обработчик проведения - та самая процедура "ОбработкаПроведения". Далее: В обычной форме в толстом клиенте (в обычном и управляемом режиме) при интерактивном проведении обработчик вызывается на клиенте. В управляемой форме в (во всех режимах) на сервере. Т.о. правильный ответ: 1 |
|||
125
Krolik Bezobraznik
15.12.15
✎
10:55
|
У меня из УФ вот так записывает без проблем. В ваших вариантах этого варианта не нашел.
&НаКлиенте Процедура ЗаписатьДокумент(Команда) ДобавитьДатуПроизводстваВТаблицу(ДатаПроизводства); Попытка Записать(Новый Структура("РежимЗаписи", РежимЗаписиДокумента.Проведение)); Оповестить("Запись", Объект.Ссылка, ЭтаФорма); ЭтаФорма.Модифицированность = Ложь; Закрыть(); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; КонецПроцедуры |
|||
126
PR третий
15.12.15
✎
11:35
|
(125) И что, код процедуры "ОбработкаПроведения" тоже выполняется на клиенте?
|
|||
127
ObjectRelation Model
15.12.15
✎
16:00
|
давайте лучше обсудим http://habrahabr.ru/post/273155/
|
|||
128
PR третий
15.12.15
✎
17:11
|
(127) А что там обсуждать-то? Все правильно в комментариях сказали "Вы работаете в контексте текущей формы, почему вам не должны быть доступны эти функции? Вот если бы вы могли вызывать таким образом приватные функции из другой формы, тогда я еще бы понял...".
|
|||
129
PR третий
15.12.15
✎
17:16
|
+(128) Чувак возмущается, что может в модуле формы вызывать другие функции этого же модуля. Вот же аяяй, да?
Так и вижу хакера, который написал обработку, которая обращается к форме, в модуле которой кто-то предварительно заботливо вписал вызов вредоносного кода. |
|||
130
Pro-tone
15.12.15
✎
17:18
|
(100) однако они есть там)
|
|||
131
DTX 4th
15.12.15
✎
17:32
|
(129) Только функции сервера (с клиента). И это странно.
|
|||
132
Пикчер
15.12.15
✎
17:46
|
(129) зачем вредоносного? достаточно
Процедура ВыполнитьНаСервернойЧастиФормы(Код) Выполнить(Код); КонецПроцедуры |
|||
133
PR третий
15.12.15
✎
17:47
|
(132) LOL
И это не вредоносный код? :))) |
|||
134
Роман Печенюшкин
15.12.15
✎
18:17
|
Я представляю, я у Груви курс по платформе купил...
|
|||
135
Роман Печенюшкин
15.12.15
✎
18:18
|
А ты, лошара печеночная, так и продолжаешь тупить...
|
|||
136
Тoлько_
Просмотр 15.12.15
✎
19:01
|
Уу.. вот они, реальные знания наружу выпирают))))
PR там жог в начале)) дальше не читал) ЗЫ ответ №4 Нельзя. Запомните это, ребята. |
|||
137
ObjectRelation Model
15.12.15
✎
21:17
|
Рома Печенкин как и с регистрами густо облажалася в клиент-сервере и упр.формах. Владелец франча одним словом
|
|||
138
PR третий
15.12.15
✎
22:35
|
(136) Эээ... мы тут как бэ решили, что можно, так что неудобнячокс :))
|
|||
139
Вуглускр1991
15.12.15
✎
22:54
|
Павел нас по ходу дурит ...
Давайте заглянем в вопрос: "можно ли проведение документа выполнять на клиенте а не на сервере? " Что значит выполнять? Выполнять - это выполнять набор инструкций в процедуре "ОбработкаПроведения" ХА! Ну вот и оно В толстом клиенте, в документах, которые в алгоритмах проведения используют только данные прочитанного на клиент объекта или какую либо эвристику и не лезут в базу за дополнительными данными (это чтобы совсем чисто) КОД процедуры ВЫПОЛНЯЕТСЯ на клиенте. Потом весь объект со всеми движениями передается на сервер, где идет ЗАПИСЬ в БАЗУ ДАННЫХ этого объекта. Ну а вдруг? Выполнять проведение документа - это с точки зрения составителя вопросов к профессионалу значит записывать в базу данных, обновлять итоги, добавлять в индексные деревья. Вот тут подходит ответ Павла. Для правильного ответа надо найти в интернетике проверенную шпору и узнать, что таки происходит в светлых головах экзаменаторов из 1С. |
|||
140
Jump
15.12.15
✎
23:18
|
(139) Все гораздо проще.
"можно ли проведение документа выполнять на клиенте а не на сервере" Вопрос ясен. Толстый клиент может работать без сервера? Думаю любой скажет, что может. А проводить документы в толстом клиенте можно? Тоже можно. Значит на толстом клиенте можно выполнять проведение. Вот и все. |
|||
141
Jump
15.12.15
✎
23:20
|
(136) Ты хочешь сказать что тысячи бухгалтеров использующих файловую БП не могут проводить документы?
Ну нет у них сервера. Или у них документы файловый сервер проводит? NTFS занимается проведением документов? Правильный ответ - 1. |
|||
142
Jump
15.12.15
✎
23:21
|
Для чего сюда приплели управляемые формы, и прочее - совершенно непонятно, это к дело совсем не относится.
|
|||
143
PR третий
15.12.15
✎
23:26
|
(139) Откуда дровишки, что имелось в виду "с точки зрения составителя вопросов к профессионалу"?
|
|||
144
Вуглускр1991
15.12.15
✎
23:26
|
(140) В вопросе НЕДВУСМЫСЛЕННО указаны роли клиента и сервера.
|
|||
145
Вуглускр1991
15.12.15
✎
23:29
|
(143) Так бывает, что вопросы составляют люди с большими или маленькими тараканами в голове, иногда они не стараются четко донести свои мысли и оперируют всем известными в узком кругу понятиями. Надо присутствовать на тренингах, чтобы понимать контексты, в которых употребляются слова написанные в вопросах.
|
|||
146
RomanYS
15.12.15
✎
23:29
|
(142) +1
года четыре назад 90% одинесников сразу бы дали правильный ответ, ну или (если бы были не ленивы) после несложного эксперимента. Сейчас же УП создало у многих такую кашу в голове, что при голосовании правильный ответ может и проиграть (. И Паша здесь похоже пал жертвой погружения в логику УП :) |
|||
147
PR третий
15.12.15
✎
23:29
|
(145) Логично. Поэтому я бы не пытался угадать их тараканов.
|
|||
148
Jump
15.12.15
✎
23:30
|
(144) Где именно там указаны роли, и что это за роли?
"можно ли проведение документа выполнять на клиенте а не на сервере?" Где тут хоть одно слово про роли, или какие то еще глубокомысленные намеки? Вопрос предельно ясен - можно или нет выполнить проведение на клиенте. Ответ - можно. |
|||
149
TormozIT
гуру
15.12.15
✎
23:31
|
1, но даже БСП местами не поддерживает это. Я с этим пытался бороться, но убедить разработчиком БСП до конца не сумел. В итоге
https://partners.v8.1c.ru/forum/topic/1135052 http://devtool1c.ucoz.ru/forum/2-218-1 |
|||
150
Jump
15.12.15
✎
23:32
|
(145) Такое бывает - но что теперь нам угадывать кашу в голове, или просто отвечать на вопрос?
Если бы вопрос звучал так - догадайтесь какой из этих вариантов будет правильным с точки зрения составителей - я бы не стал спорить. |
|||
151
Вуглускр1991
15.12.15
✎
23:36
|
(150) От этого зависит результат сдачи теста :)
|
|||
152
Вуглускр1991
15.12.15
✎
23:39
|
(148) Вот типичная ситуация несовпадения контекстов:
клиент и сервер - это РОЛИ при взаимодействии в информационной системе двух разных субъектов. А в 1С роли - это такая ветка дерева метаданных. А у те, кто дороже нас в два раза, очень бы удивились узнав что они и есть сервера. |
|||
153
Jump
15.12.15
✎
23:51
|
Допустим вам задали простой вопрос - "какое число больше 2 или 10?"
Можно просто ответить 10 и закрыть тему. А можно развести дискуссию на десять страниц - о РОЛИ контекста в прикладной математике, и о том что два больших апельсина могут быть значительно больше чем десять маленьких. И о том что, если представить число 2 в десятичном контексте, а число 10 в двоичном, то можно говорить о их равенстве. И спорить до посинения. Можно даже монографию написать на эту тему. Только кому оно надо? |
|||
154
Вуглускр1991
15.12.15
✎
23:55
|
(153) Только для сдачи теста, больше ни для чего. Там (в 1С) не к кому будет подходить и говорить о том, что ты был прав, а составитель вопросов нет.
|
|||
155
Пикчер
16.12.15
✎
09:20
|
(139) надо читать внимательно вопрос. Это задача по интепретации. ВыполнЯть проведение на клиенте можно (отв 1). ВыполнИть проведение С клиента нельзя (отв 4) =)
|
|||
156
Вуглускр1991
16.12.15
✎
10:19
|
(155) Точно, русский язык ++
|
|||
157
Stim
16.12.15
✎
10:26
|
>>серверный код
шаловливые одинесники выдумали свою терминологию? в 1С есть код. Он может выполняться либо на сервере, либо на клиенте - как укажет разработчик. |
|||
158
mistеr
16.12.15
✎
11:11
|
(94) Движения запиши в транзакции.
И &НаКлиенте поставь для верности. |
|||
159
Пикчер
16.12.15
✎
11:31
|
(157) в природе есть ветер - градиентное движение воздушных масс. он может дуть с севера или юга или запада или востока. а северный ветер придумали одинэснеки )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |