|
Поговорим о тонком клиенте начистоту. В чем тонкость? | ☑ | ||
---|---|---|---|---|
0
ObjectRelation Model
30.03.16
✎
10:26
|
В чем тонкость тонкого клиента, если при открытии формы туда тянется весь контекст объекта?
А при вызове серверной процедуры для, например, расчета скидки весь контекст табличной части Товары тянется обратно на сервер? Не изменения, подчеркиваю, а именно все данные? Почему между серверными вызовами на сервере объект не живет? |
|||
1
Лодырь
30.03.16
✎
10:27
|
(0)
&НаСервереБезКонтекста |
|||
2
zak555
30.03.16
✎
10:27
|
в УП 2.0 например при открытии документ ТЧ подтягивается на клиент не сразу
т.е. передача всего объекта идёт только после перехода на форму, где есть ТЧ |
|||
3
vde69
30.03.16
✎
10:31
|
для 1с тонкий клиент - полу фикция....
одну часть 1с выполнила - с тонкого клиента нет доступа к данным базы данных, а вот про выполнения кода - тут 1с явно смухлевала :) я давно задавался вопросом "почему 1с не сделала тонкий клиент по принципу RDP, где на клиент тянется только картинка" |
|||
4
ObjectRelation Model
30.03.16
✎
10:31
|
(1) без контекста толку в данном случае нету
(2) это из профайлера видно? |
|||
5
Asmody
30.03.16
✎
10:32
|
(3) А почему браузер не работает "по принципу RDP"?
|
|||
6
Asmody
30.03.16
✎
10:33
|
(0) Воспринимай тонкий клиент как очень сильно заточенный браузер, и всё встанет на свои места.
|
|||
7
vde69
30.03.16
✎
10:33
|
(5) с каких пор браузер причислен к тонкому клиенту?
|
|||
8
Волшебник
модератор
30.03.16
✎
10:34
|
(7) всегда им был
|
|||
9
ObjectRelation Model
30.03.16
✎
10:38
|
(6) я когда пост на мисте пишу наверное вся страница обратно на сервер не отправляется, а только мой пост?
|
|||
10
ДенисЧ
30.03.16
✎
10:39
|
Тонкий клиент только называется тонким. Оставь иллюзии
|
|||
11
Карупян
30.03.16
✎
10:40
|
(9) Это как сайт написать
|
|||
12
zak555
30.03.16
✎
10:41
|
(4) нет, из описания
на форме не делай Таблицу с видом Объект.Товары, а свою какую-то -- которая будет при определенном момент считываться так читаются все допРеквизиты из ТЧ ДополнительныеРеквизиты |
|||
13
ObjectRelation Model
30.03.16
✎
10:42
|
(12) интересное кино, а если я хочу волшебную кнопку "обнулить ндс в товарах", например, что мне передавать в качетве контекста на сервер?
|
|||
14
Карупян
30.03.16
✎
10:43
|
Доп реквизиты вообще не показываются в виде ТЧ
|
|||
15
Михаил 1С
30.03.16
✎
10:44
|
(3) "я давно задавался вопросом "почему 1с не сделала тонкий клиент по принципу RDP, где на клиент тянется только картинка""
Видимо для того, чтобы не прерывалась работа каждый раз как только рвется связь. Это же задолбает. Связь может быть нестабильной, рваться через секунду, и что - вы будете материться и ломать свой смартфон от злости? Нет, сделано так, что вы можете спокойно продолжать вводить данные в документ, форма документа у вас на клиенте. А вот когда нажимаем Провести, то надо дождаться связи. ПС: могу ошибаться, но помоему сделано именно для этого. |
|||
16
Карупян
30.03.16
✎
10:45
|
Так никто не делает клиентов в виде РДП
|
|||
17
пипец
30.03.16
✎
10:48
|
не знаю, что как но и на толстом и на тонком клиенте распометить пользователя с удаления не дает - документооборот 2.0 корп релиз математики 8.3.6 клиент сервер MSSQL, на тонком - ошибка сервера, на толстом - надпись - не могу так как (описание моего же сеанса ) уже заблокировал объект ... вот такое 1Цы )))
|
|||
18
ObjectRelation Model
30.03.16
✎
10:48
|
(15) а почему это должно приводить к падению приложения?
|
|||
19
los_hooliganos
30.03.16
✎
10:49
|
Тонкость в том. что на клиенте только форма.
|
|||
20
ObjectRelation Model
30.03.16
✎
10:50
|
(19) ты эти сказки бабушке рассказывай
на клиенте весь объект, только доступа к нему с клиента нет )) |
|||
21
los_hooliganos
30.03.16
✎
10:51
|
Тонкий клиент нужен для организации очень большого числа подключений к БД.
Именно для этого SAP его и придумал. 1С взяло немецкую идею. |
|||
22
los_hooliganos
30.03.16
✎
10:51
|
(20) Откуда эти выдумки?
|
|||
23
los_hooliganos
30.03.16
✎
10:53
|
Полноценно с объектом работает сервер.
Сервер хранит у себя копию формы клиента. Клиент работает только с указателями которые дал ему сервер. |
|||
24
Fragster
гуру
30.03.16
✎
10:55
|
||||
25
Волшебник
модератор
30.03.16
✎
10:55
|
(20) Повежливее, чувак.
|
|||
26
Остап Сулейманович
30.03.16
✎
10:56
|
(20) "на клиенте весь объект" Не путайте теплое с мягким.
На Клиенте "Объект" - это форма с контролами и приписанными к ним данными. На сервере "Объект" - это именно объект БД. |
|||
27
Остап Сулейманович
30.03.16
✎
10:59
|
+ (26) А вот с терминами у 1С конечно засада.
И с поддержкой сеансов на сервере. В этом плане делано всего полшага - "ПараметрыСеанса". И то ИМХО на костылях. |
|||
28
H A D G E H O G s
30.03.16
✎
11:07
|
Хорошая ветка, индикатор.
|
|||
29
H A D G E H O G s
30.03.16
✎
11:07
|
Ответ в (21), на самом деле.
|
|||
30
Drac0
30.03.16
✎
11:07
|
(0) "Не изменения, подчеркиваю, а именно все данные? "
С чего ты взял? |
|||
31
H A D G E H O G s
30.03.16
✎
11:08
|
Ну, а специально для (0), рекомендую посмотреть количество серверных вызовов при прокрутки ТЧ, ДинСписков, ТабличныхДокументов!
|
|||
32
busy1
30.03.16
✎
11:11
|
Кстати кроме RDP есть ещё и другие протоколы. Пусть 1С сделает для всех протоколов удаленного управления.
|
|||
33
Drac0
30.03.16
✎
11:13
|
(31) ИМХО, именно такие люди использует НайтиСтроки() в циклах на клиенте. Сволочи...
|
|||
34
H A D G E H O G s
30.03.16
✎
11:13
|
(33) а что не так?
|
|||
35
Aleksey
30.03.16
✎
11:14
|
(29) Так вроде бы вопрос не в том что такое тонкий клиент у САП, а именно вопрос к 1С. Так как она любит изобретать велосипед, на костылях, а чтобы всех запутать давать им имена такие как в других системах
|
|||
36
Drac0
30.03.16
✎
11:16
|
(34) Серьезно? Оно может генерить серверный вызов на больших ТЗ. Один раз на определенном наборе данных это вывалилось в 2000 серверных вызовов. Из любопытства дождался окончания - 20 минут. После контекстного ухода на сервер 20 секунд.
|
|||
37
Провинциальный 1сник
30.03.16
✎
11:16
|
(3)"почему 1с не сделала тонкий клиент по принципу RDP, где на клиент тянется только картинка"
Помню, года три назад за подобные мысли тут предавали анафеме. Потому что 1с непогрешим, ибо "если ты такой умный, то где твои миллионы"? На самом деле, сделать тонкого клиента на более низком уровне, не затрагивающем бизнес-логику, было не так уж и сложно. Но тогда не получилось бы простой интеграции с веб-браузером. А браузер сейчас - основа основ. Поэтому и пришлось изобретать тонкого клиента с браузерным рантаймом. |
|||
38
Лодырь
30.03.16
✎
11:17
|
(4)
"без контекста толку в данном случае нету " Как нету, если не надо тащить весь контекст обратно на сервер. |
|||
39
H A D G E H O G s
30.03.16
✎
11:17
|
(36) Надо проверить.
|
|||
40
butterbean
30.03.16
✎
11:17
|
(36) т.е. поиск в ДанныеФормыКоллекция делает серверные вызовы?
|
|||
41
H A D G E H O G s
30.03.16
✎
11:17
|
(40) Вот тоже интересно.
|
|||
42
Drac0
30.03.16
✎
11:20
|
(40) Ага, т.к. большая коллекция тянется на клиента кусками.
|
|||
43
Fragster
гуру
30.03.16
✎
11:25
|
ДанныеФормыКоллекция.НайтиСтроки (FormDataCollection.FindRows)
ДанныеФормыКоллекция (FormDataCollection) НайтиСтроки (FindRows) Синтаксис: НайтиСтроки(<ПараметрыОтбора>) Параметры: <ПараметрыОтбора> (обязательный) Тип: Структура. Задает условия поиска: ключ структуры определяет имя колонки, по которой будет осуществляться поиск, а значение структуры - искомое значение. Возвращаемое значение: Тип: Массив. Массив строк коллекции, соответствующих условиям поиска. Замечание! Массив хранит ссылки на строки коллекции, то есть при изменении строки в коллекции, значение в массиве тоже будет измененным. Описание: Осуществляет поиск строк таблицы значений, отвечающих заданным условиям поиска. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, мобильное приложение(клиент), мобильное приложение(сервер). Вызов метода выполняет обращение к серверу. Примечание: Метод эффективно использовать для выборки неуникальных значений. |
|||
44
H A D G E H O G s
30.03.16
✎
11:29
|
(42) Точно!
|
|||
45
H A D G E H O G s
30.03.16
✎
11:30
|
Посыпем голову пеплом и перейдем на массивструктур.
|
|||
46
Fragster
гуру
30.03.16
✎
11:35
|
(36) можно пример кода?
|
|||
47
Asmody
30.03.16
✎
11:35
|
(21) Кто сказал, что тонкий клиент придумал SAP?
|
|||
48
Drac0
30.03.16
✎
11:44
|
(46) На прошлой работе была обработка. Так что нету.
|
|||
49
Drac0
30.03.16
✎
11:45
|
+(48) Справедливости ради на такой трэш я наткнулся, когда указал период немного больше, чем обычный. Но и на адекватных параметрах она вертелась несколько минут.
|
|||
50
Aceforg
30.03.16
✎
12:11
|
(45) С учетом того, что в расширения появится расширения общих модулей, модулей объектов, все идет к тому, что перейдем на пляски с массивструктур и иже с ними.
По крайнее мере типовые идут в этом направлении. |
|||
51
PRO100 NigGaZ
30.03.16
✎
12:22
|
меня беспокоит производительность при серелиализации и десериализации, если на форму загрузить Очень большую таблицу то ее передача произвойдет быстро, а сериализация будет идти много минут
|
|||
52
Карупян
30.03.16
✎
12:27
|
(46) Пример кода поиска в тч на клиенте?
|
|||
53
Ник080808
30.03.16
✎
12:29
|
(52) загрузка из эксель
|
|||
54
Ник080808
30.03.16
✎
12:30
|
хотя правильнее таки его в запрос. Но семерошники жгут)
|
|||
55
Patriot1C
30.03.16
✎
13:02
|
"А почему браузер не работает "по принципу RDP"?"
- браузер работает на открытых стандартах, а RDP (англ. Remote Desktop Protocol — протокол удалённого рабочего стола) — проприетарный протокол прикладного уровня, позаимствованный Microsoft из купленной у PictureTel (ныне известной как Polycom). Но из проприоритетных лучше Citrix ICA. |
|||
56
H A D G E H O G s
30.03.16
✎
13:03
|
(51) И будет идти по каждому чиху.
|
|||
57
Patriot1C
30.03.16
✎
13:04
|
"Почему между серверными вызовами на сервере объект не живет?"
- Есть два объекта, один на сервере другой урезанный на клиенте. Они обмениваются данными. |
|||
58
PRO100 NigGaZ
30.03.16
✎
13:06
|
(57) и иногда у них происходит рассинхрон с вываливанием соответствующей ошибки :)
|
|||
59
ObjectRelation Model
30.03.16
✎
13:29
|
почему переменные модуля объекта не живут между вызовами сервера?
|
|||
60
Drac0
30.03.16
✎
13:44
|
(59) Какого именно сервера в случае кластера?
|
|||
61
MM
30.03.16
✎
13:47
|
(59) А как вы это представляете, если рабочие процессы сервера могут находиться на разных компьютерах входящих в кластер? Разумеется, есть сеансовые данные, которые мигрирую в кластере, но чем их меньше, тем лучше.
|
|||
62
ObjectRelation Model
30.03.16
✎
13:51
|
(60)(61) то есть по вашему весь огромный объект может жить на сервере, пока форма редактируется, а еще одно поле-переменная уже никак?
|
|||
63
MM
30.03.16
✎
13:55
|
А она там живёт? Или перечитывается из БД при обращении, которое значительно короче, чем общее время работы с формой?
|
|||
64
Fragster
гуру
30.03.16
✎
14:05
|
(62) он прилетает на сервер вместе с контекстным вызовом
(63) а он не перечитывается :) |
|||
65
Fragster
гуру
30.03.16
✎
14:05
|
(57) нет
|
|||
66
ObjectRelation Model
30.03.16
✎
14:26
|
(64) так все-таки его там нет и он тянется с клиента, как написано в (0)?
|
|||
67
Карупян
30.03.16
✎
14:32
|
(59) Объект в том понимании, как в 8.1 не живет дольше 1 процедуры.
Почему так? надо у 1с спросить |
|||
68
toypaul
гуру
30.03.16
✎
14:32
|
(0) так дело не инструменте, а в реализации. если тебе надо скидку пересчитать - сделай на форме ссылку и табличку с номерами строк. в чем проблема? и пересчитывай на сервере.
но тебе же надо чтобы все и сразу на форме отображалось. так или нет? |
|||
69
rsv
30.03.16
✎
14:34
|
(0) Имха Скорее тонкий клиент это ... переходное состояние между толстым клиентом и браузером . В идеале все сводилось к браузеру.
|
|||
70
Temai
30.03.16
✎
14:36
|
(0) А мое ИМХО что тонкий клиент был сделан в целях безопасности, т.к. на нем нельзя менять объекты БД. и наверное и для этого (21)
|
|||
71
Kupogun
30.03.16
✎
14:39
|
(47) действительно, откуда эта инфа?
я считал, что эту концепцию использовала oracle раньше немцев. |
|||
72
Drac0
30.03.16
✎
14:41
|
(62) Одна переменная может быть ТЗ на миллион строк. И че, тащить?
|
|||
73
Fragster
гуру
30.03.16
✎
14:44
|
(66) у 1с "stateless" сервер, на нем существуют только ограниченный набор данных, например параметры сеанса или данные, помещенные во временное хранилище, остальное тянется с клиента в составе контекста.
|
|||
74
ObjectRelation Model
30.03.16
✎
14:44
|
(73) а меня тут уверяют о другом
|
|||
75
Nuobu
30.03.16
✎
14:48
|
(65) да
|
|||
76
Drac0
30.03.16
✎
14:48
|
(73) (74) http://its.1c.ru/db/metod8dev/content/3616/hdoc
"основным хранилищем всех данных выступает сервер" |
|||
77
MM
31.03.16
✎
12:23
|
И кто из вас прав (73) или (76) ?
|
|||
78
Живой Ископаемый
31.03.16
✎
12:31
|
2(77) Это две стороны одной медали. Серверный контекст клиента - стэйтлесс. Он не "хранит" это состояние. Для того чтобы получить мгновенное состояние, сервер будет получать те данные которые он хранит
|
|||
79
MM
31.03.16
✎
15:40
|
(78) Откуда сервер их будет получать?
в http://its.1c.ru/db/metod8dev/content/3616/hdoc рассказывается "данные формы доступны и на клиенте и на сервере, то основным хранилищем всех данных выступает сервер" |
|||
80
Лефмихалыч
31.03.16
✎
16:10
|
(0) >Почему между серверными вызовами на сервере объект не живет?
потому, что это stateless-сервер |
|||
81
Живой Ископаемый
31.03.16
✎
16:21
|
2(79) От Сервера баз данных
|
|||
82
Карупян
31.03.16
✎
16:23
|
(80) А ДанныеФормыКоллекции?
|
|||
83
Тролль главный
31.03.16
✎
16:24
|
(81) несмотря на то, что на клиенте они поменялись?
|
|||
84
Тролль главный
31.03.16
✎
16:25
|
И еще как открыть две формы одного объекта? ни одной и той же ссылки в БД, а именно объекта?
|
|||
85
Лефмихалыч
31.03.16
✎
16:27
|
(84) вопрос "зачем это нафиг делать" мы, надо полагать, не задаем?
|
|||
86
Drac0
31.03.16
✎
16:36
|
(79) ДанныеФормы - это данные сеанса, как и параметры сессии, ИМХО.
|
|||
87
DTX 4th
31.03.16
✎
16:41
|
Я думал, объект собирается из данных формы, которые сервер получает с клиента.
|
|||
88
Тролль главный
31.03.16
✎
16:43
|
(85) юзабилити знаете УФ. Как правильно открыть доп.форму редактируемого элемента справочника?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |