Недостаточно памяти в 1С 8.2 файловая

1. IgorArhangel 9 26.02.15 10:17 Сейчас в теме
Имеется 1С 8.2 УТП файловая. размер базы 6 гиг
Windows Server 2008 16 ОЗУ

Проблема в том что процесс 1С занимает 3,5 гига при нормальной работе. Потом в подборе вместо изображений появляются большие кресты.

Тестирование проводил именно на подборе и вычислил что именно он забивает оперативу.

Переносил всю базу на рабочий ноут (Windows 7 x64) и что увидел, подбор забивает оперативу до 1.5 гига а потом освобождается ОЗУ.

Не знаю куда копать.
Может кто-то сталкивался с такой проблемой?

Скитания по интернету ничего не дали
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
3. DJDUH 17 26.02.15 11:44 Сейчас в теме
(1) IgorArhangel, Если не типовая - то смотреть в сторону Функций при открытии формы выбора, ну и может, как (2)
2. tarassov 111 26.02.15 10:47 Сейчас в теме
что увидел, подбор забивает оперативу до 1.5 гига а потом освобождается ОЗУ
- т.е при подборе формируется какой-то большой тяжелый и неоптимальный запрос, так?
У тебя случайно не включены ограничения доступа на уровне записей (RSL)? Сложные ограничения могут пожирать ресурсы немеряно
4. IgorArhangel 9 26.02.15 12:21 Сейчас в теме
(2) tarassov, запросов как таковых по моему нет. Ну разве что запрос по остаткам.
ограничения доступа на уровне записей не включены.

(3) DJDUH, конфа не типовая.
Даже подбор не много переписан.

Все менеджеры пользуются подбором с картинками.
И когда листаешь каждая картинка забивает оперативу.

Но как я понял это нормально.

Я перенес эту же базу полностью на ноут.
У меня более 1,5 гига не занимается памяти.

Мне бы как-то сделать такое же на сервере и этого бы хватило. На первое время.
39. AlexO 135 02.03.15 10:01 Сейчас в теме
(4) IgorArhangel,
Я перенес эту же базу полностью на ноут.
У меня более 1,5 гига не занимается памяти.
Сделайте ноутбук - сервером, подключите пользователей к нему, и у вас будет заниматься оперативки еще больше.
(8) IgorArhangel,
Так а разве изображения тут не причем?
Еще как причем, они подгружаются вместе с подбором, т.к. являются содержимым реквизитов.
Выделите картинки в отдельную базу, в реквизите - дайте ссылки. А больше нормально работающих вариантов на 1С нет.
Вот здесь Количество символов в текстовом описании товара все тоже самое и о том же.
41. AllexSoft 02.03.15 10:05 Сейчас в теме
(39) AlexO,
Сделайте ноутбук - сервером, подключите пользователей к нему, и у вас будет заниматься оперативки еще больше.

у него файловая база!!!! или у вас тоже вся сетевая шара в оперативу грузиться ?))
43. AlexO 135 02.03.15 10:08 Сейчас в теме
(41) AllexSoft,
у него файловая база!!!!
И что? Файловая не пользуется оперативной памятью?
44. AllexSoft 02.03.15 10:10 Сейчас в теме
(43) AlexO, на клиентах - пользуется.. на сервере - нет) это просто файлы лежащие на диске и гоняемые по сети туда-сюда
46. AlexO 135 02.03.15 10:15 Сейчас в теме
(44) AllexSoft,
это просто файлы лежащие на диске и гоняемые по сети туда-сюда
Где бы они не "лежали", в первую очередь все зависит от того, как они подцеплены.
Если напрямую в реквизите - то будут грузиться, если по ссылке на диск - то не будут. Но во втором случае они не будут работать и в веб-клиенте. Только в толстом или тонком.
49. AlexO 135 02.03.15 10:22 Сейчас в теме
(44) AllexSoft,
это просто файлы лежащие на диске и гоняемые по сети туда-сюда
Нет, не просто файлы.
(41) AllexSoft,
или у вас тоже вся сетевая шара в оперативу грузиться ?))
У него нет никакой "сетевой шары", оно и понятно - файлы в базе, проблема эта множество раз встает всегда как первый случай на чьей-то практике.
Вот же, даже явно написано:
(15) IgorArhangel,
Картинки хранятся в базе.
5. IgorArhangel 9 26.02.15 12:22 Сейчас в теме
Платформы полностью идентичны.
За исключением того что на ноуте не совсем легал
6. AllexSoft 26.02.15 12:27 Сейчас в теме
(5) IgorArhangel, ну какая у вас платформа озвучьте для начала.. а вообще 16гб для файловой это предел наверное ) я бы взял на вашем месте что нибудь типа Tool 1CD и посмотрел бы размеры самых жирных таблиц, покопался что там у вас за таблицы больше всего кушают, и попытался бы их оптимизировать
ПС: может у вас там табличка _systemsettings все скушала )))
92. FractonKireyev 23.03.15 08:58 Сейчас в теме
(6) AllexSoft,
Читайте мат. часть: предел 4Гб на одну таблицу, а таких таблиц может быть немеряно. Я встречал файловые БД в десятки ГБ - и ничего. работали.
93. AllexSoft 23.03.15 10:12 Сейчас в теме
(92) FractonKireyev, откройте глаза и ткните мне где я написал про "4гб" ... я написал только что 16Гб это ПРАКТИЧЕСКИЙ предел файловых баз которые МНЕ встречались и хоть как то могли работать. Если у вас есть примеры файловых баз большего объема чем 16гб - то я этого не отрицаю, просто говорю что в сетевом режиме работа с такими бд будет адом
94. AlexO 135 23.03.15 11:39 Сейчас в теме
(93) AllexSoft,
просто говорю что в сетевом режиме работа с такими бд будет адом
Работа с сетевыми файловыми Бд определяется в первую очередь не размером базы, а количеством одновременно подключенных пользователей.
База может быть 1 Гб, а пять пользователей будут вешать её напрочь.
С ростом баз - да, еще и проблема объема тоже становится актуальной. Но не главной.
7. SaschaL 26.02.15 12:28 Сейчас в теме
(5) IgorArhangel, Возможно серверная система не так оперативно очищает память.
Может поиграться с тем местом котрое в подборе переписанное. Я бы показывал картинки при активизации строки справочника.
8. IgorArhangel 9 26.02.15 12:29 Сейчас в теме
Платформа
1С:Предприятие 8.2 (8.2.19.106)

База весит 6 гиг

16 гиг - это оперативы на серваке.

Так а разве изображения тут не причем?
9. AllexSoft 26.02.15 12:31 Сейчас в теме
(8) IgorArhangel,
Так а разве изображения тут не причем?

вполне вероятно что может ваши картинки это последний гвоздь в гроб вашей конфы просто, а там и без картинок проблем куча) давайте посмотрите какие таблицы у вас самые жирные
ПС: а как вы картинки показываете кстати ?) я например предпросмотр делал на HTML поле.. у меня работает отлично и без глюков
10. IgorArhangel 9 26.02.15 12:34 Сейчас в теме
Вот фото реализации подбора

11. AllexSoft 26.02.15 12:36 Сейчас в теме
(10) IgorArhangel, а номенклатуры в справочнике всего много?
12. IgorArhangel 9 26.02.15 12:37 Сейчас в теме
а как вы картинки показываете кстати ?)


Та подбор был реализован до меня, от стандартного отличается парой процедур

Предпросмотр реализован через поле изображение, то есть поле картинки. При клике на картинку переходит на полное изображение товара
13. IgorArhangel 9 26.02.15 12:39 Сейчас в теме
а номенклатуры в справочнике всего много?


примерно 6000

но фото не на всех есть фотки примерно на 4500 товаров есть.
14. AllexSoft 26.02.15 12:43 Сейчас в теме
(13) IgorArhangel, это не много.. фортки показываются по одной, то есть все равно сколько у вас прикреплено к номенклатуре.. хотя если у вас они в базе хранятся разве что ?... не знаю в вашей конфе можно делать внешние тома хранения файлов или только внутри базы ?
15. IgorArhangel 9 26.02.15 12:50 Сейчас в теме
хотя если у вас они в базе хранятся разве что ?... не знаю в вашей конфе можно делать внешние тома хранения файлов или только внутри базы ?


Картинки хранятся в базе.
На каждую номенклатуру заведена только одна картинка.

Я тоже не знаю надо будет посмотреть.

Так меня устраивает хранение картинок в базе.

Вот бы как-то с забивкой оперативы разобраться.

Скачал программу tool 1CD

Посмотрел таблицы вот такая картина нарисовалась

19. AllexSoft 26.02.15 14:08 Сейчас в теме
(15) IgorArhangel, судя по всему у вас 50% это как раз ваши картинки )) посмотрите можно ли настроить у вас тома хранения файлов.. и переведите на тома хранения из хранения в базе.. я бы сказал в вашем случае это проблема #1
42. AlexO 135 02.03.15 10:06 Сейчас в теме
(15) IgorArhangel,
Посмотрел таблицы вот такая картина нарисовалась
Все, что вы решите с помощью Tool1CD - это выявите таблицу, превышающую 4ГБ, когда у вас база больше не будет выгружаться в файл. И все.
С подбором она вам никак не поможет.
16. tarassov 111 26.02.15 12:56 Сейчас в теме
Я бы все-таки посоветовал посмотреть (или показать сюда) запрос, который формирует подбор.
У меня появилось подозрение на то, что все картинки выбираются сразу в результат запроса. В то время как оптимальнее было бы выбирать в запросе только ссылку на картинку, а сами двоичные данные получать только в момент наведения на товар
17. IgorArhangel 9 26.02.15 13:01 Сейчас в теме
Я бы все-таки посоветовал посмотреть (или показать сюда) запрос, который формирует подбор.
У меня появилось подозрение на то, что все картинки выбираются сразу в результат запроса. В то время как оптимальнее было бы выбирать в запросе только ссылку на картинку, а сами двоичные данные получать только в момент наведения на товар


Вроде вот этот код

Процедура ОбновитьИзображение()

	Если ПодборПоСправочнику Тогда
		Если ЭлементыФормы.КоманднаяПанельИзображения.Кнопки.Изображение.Пометка Тогда
			Если ЭлементыФормы.СправочникНоменклатура.ТекущиеДанные <> Неопределено Тогда

				Номенклатура = ЭлементыФормы.СправочникНоменклатура.ТекущиеДанные.Ссылка;

				Если НЕ ЭлементыФормы.СправочникНоменклатура.ТекущиеДанные.ЭтоГруппа Тогда
					Если ЗначениеЗаполнено(Номенклатура.ОсновноеИзображение) Тогда
						ЭлементыФормы.ОсновноеИзображение.Картинка = Номенклатура.ОсновноеИзображение.Хранилище.Получить();
						Возврат;
					КонецЕсли;
				КонецЕсли;
			КонецЕсли;

			ЭлементыФормы.ОсновноеИзображение.Картинка = мПустаяКартинка;
		КонецЕсли;

	Иначе

		Если ЭлементыФормы.КоманднаяПанельИзображения.Кнопки.Изображение.Пометка Тогда
			Если ЭлементыФормы.НоменклатураДляПодбора.ТекущиеДанные <> Неопределено Тогда

				Номенклатура = ЭлементыФормы.НоменклатураДляПодбора.ТекущиеДанные.Номенклатура;

				Если НЕ ЭлементыФормы.НоменклатураДляПодбора.ТекущиеДанные.ЭтоГруппа Тогда
					Если ЗначениеЗаполнено(Номенклатура.ОсновноеИзображение) Тогда
						ЭлементыФормы.ОсновноеИзображение.Картинка = Номенклатура.ОсновноеИзображение.Хранилище.Получить();
						Возврат;
					КонецЕсли;
				КонецЕсли;
			КонецЕсли;

			ЭлементыФормы.ОсновноеИзображение.Картинка = мПустаяКартинка;
		КонецЕсли;

	КонецЕсли;

КонецПроцедуры // ОбновитьИзображение()
Показать
18. IgorArhangel 9 26.02.15 13:22 Сейчас в теме
Прочитал в интернете одну фитчу.

что есть параметр который устанавливает выделяемое количество оперативной памяти для приложений
Называется он increaseuserva и по имолчанию для х32 он равен 2 гига, а для х64 - 4 гига.

установить на 2 гига можно командой
bcdedit /set increaseuserva 2048

Но мне как-то стремновато это делать...

Просто интересно как это так что ни у кого никогда такого не было.
20. IgorArhangel 9 26.02.15 15:18 Сейчас в теме
судя по всему у вас 50% это как раз ваши картинки )) посмотрите можно ли настроить у вас тома хранения файлов.. и переведите на тома хранения из хранения в базе.. я бы сказал в вашем случае это проблема #1


К огромному сожалению хранить файлы на диске в редакции УТП (управление торговым предприятием) невозможно.
Блин вот не задача.

Если такой функционал не реализован значит придется реализовывать самому, или искать на просторах интернета что-то похожее, чтоб не изобретать велосипед.
21. AllexSoft 26.02.15 16:11 Сейчас в теме
(20) IgorArhangel, благо подобный функционал внедряется довольно легко.. зато база похудеет значительно.. что увеличит общую производительность системы
22. IgorArhangel 9 27.02.15 09:13 Сейчас в теме
благо подобный функционал внедряется довольно легко.. зато база похудеет значительно.. что увеличит общую производительность системы


Можете подсказать в какую сторону копать?

Не могу понять с чего начинать.

С 1С знаком не очень сильно.

Может какие-то обработки есть?
23. AllexSoft 27.02.15 10:25 Сейчас в теме
(22) IgorArhangel, в УПП есть все готовое и для ОФ.. вырезаются оттуда и внедряются в свою за пол дня.. я так сам и делал + попутно переписав немного под себя
24. IgorArhangel 9 27.02.15 12:37 Сейчас в теме
в УПП есть все готовое и для ОФ.. вырезаются оттуда и внедряются в свою за пол дня.. я так сам и делал + попутно переписав немного под себя


Буду пробовать.

Как сделаю отпишусь.
25. AllexSoft 27.02.15 12:41 Сейчас в теме
(24) IgorArhangel, ссори, дезинформировал.. из УПП я вырезал версионирование, про тома не знаю, но если они готовые для ОФ и есть, то в УПП )
а тома для себя я же из БСП достал, но там УФ, вам не подойдет...
26. IgorArhangel 9 27.02.15 16:35 Сейчас в теме
Сегодня сделал обработку и проставил всей номенклатуре одно пиксельную картинку. И что оказалось, оператива совершенно не грузится.

Мне просто интересно если картинки брать из этого тома хранения, они не будут снова же лезть в оперативу?

Может мне можно просто переписать мой подбор, чтоб при активизации строки картинка подгружалась, а при переходе на другую строку автоматом выгружалась из оперативы?

А про хранение изображений в папке нашел вот такую тему
http://infostart.ru/public/296744/

может можно будет ею и обойтись?
28. AllexSoft 27.02.15 16:44 Сейчас в теме
(26) IgorArhangel, может попробовать вам сделать на HTML-поле как у меня сделано?
делаем реквизит строковый ПредпросомтрКартинки кладем на форму, назначаем ему Вид - Поле HTML документа, при активизации строки в ТЧ пишем что то типа

previewTAG = "<img src="+ПрисоединенныйФайл.СсылкаНаДвоичныеДанныеФайла+" width=100% ></img>";
			                        //     height=100%
htmlТекст = 
			 "<ht ml>        
			 |<head>
			 |</head>
			 |<body>"+previewTAG+"
			 |</body></html>";

ПредпросомтрКартинки  = htmlТекст; 
Показать
romkus; tarassov; +2 Ответить
27. IgorArhangel 9 27.02.15 16:38 Сейчас в теме
ссори, дезинформировал.. из УПП я вырезал версионирование, про тома не знаю, но если они готовые для ОФ и есть, то в УПП )
а тома для себя я же из БСП достал, но там УФ, вам не подойдет...


Сейчас скачал УПП буду разбирать.
Может и действительно получится перенести.
29. IgorArhangel 9 27.02.15 17:00 Сейчас в теме
Так все равно нужно это изображение будет из хранилища доставать?
Или я что-то не так понял.

Вот этот параметр с изображением придется тянуть из Хранилища?
+ПрисоединенныйФайл.СсылкаНаДвоичныеДанныеФайла+
30. AllexSoft 27.02.15 17:09 Сейчас в теме
(29) IgorArhangel, ну в вашем случае туда можно воткнуть путь до общей шары с картинками..
типа \\Server\share\img\blabla.jpg
31. IgorArhangel 9 27.02.15 17:15 Сейчас в теме
ну в вашем случае туда можно воткнуть путь до общей шары с картинками..
типа \\Server\share\img\blabla.jpg


Так все равно придется переделывать форму добавления картинок, чтоб при добавлении они сразу в шару записывались.

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

Просто у меня раелизовано так что все названия картинок соответствуют кодам номенклатуры.

Или уже сделать нормально как в этой статье написано
http://infostart.ru/public/296744/
32. AllexSoft 27.02.15 17:25 Сейчас в теме
(31) IgorArhangel,
Так все равно придется переделывать форму добавления картинок, чтоб при добавлении они сразу в шару записывались.

это даа

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

только надо будет следить чтобы юзеры барахло в эту папку обмена не кидали и чтобы файлы картинок праивльно называли, что есть огромная проблема как правило

Или уже сделать нормально как в этой статье написано
http://infostart.ru/public/296744/

или так можно)
33. IgorArhangel 9 27.02.15 17:29 Сейчас в теме
только надо будет следить чтобы юзеры барахло в эту папку обмена не кидали и чтобы файлы картинок праивльно называли, что есть огромная проблема как правило


Так в чем прикол юзеры картинки не добавляют, все это делаю я.
Я фотаю, подгоняю размер, накладываю логотип и загружаю в 5 баз.

Как-то так.

Сделаю все-таки как написано в статье.
Оно там довольно таки ясно расписано.

Поставил себе УПП
И не нашел где включаются тома хранения.

И разочаровался.
34. AllexSoft 27.02.15 17:33 Сейчас в теме
(33) IgorArhangel,
Поставил себе УПП
И не нашел где включаются тома хранения.

ну вполне возможно что там их и нет, хотя это очень странно... жаль проверить не могу, УПП нет сейчас под рукой
35. IgorArhangel 9 27.02.15 17:43 Сейчас в теме
ну вполне возможно что там их и нет, хотя это очень странно... жаль проверить не могу, УПП нет сейчас под рукой


Это наверное настройка на серверном варианте.
У меня же не серверная база.

Просто база в папке лежит и все через терминал заходят и юзают её, как-то так.

Наверное из-за этого у меня в УПП и нет этого параметра.

Та и установилась она не с новым интерфейсом.

Как-то странно
36. AllexSoft 27.02.15 17:57 Сейчас в теме
(35) IgorArhangel,
Это наверное настройка на серверном варианте.

точно нет, у меня файловая база на основе БСП и там тома хранения есть

Та и установилась она не с новым интерфейсом.

Как-то странно

ну потому что "с новым интерфейсом" она называется не УПП вовсе) а 1С ERP 2.0, это другая конфа.. в УПП только со старым и переписывать ее под УФ по всей видимости не будут
38. AlexO 135 02.03.15 09:56 Сейчас в теме
(36) AllexSoft,
в УПП только со старым и переписывать ее под УФ по всей видимости не будут
УПП уже наполовину переписана под УФ.
А ERP - это совершенно другая конфигурация, ничего общего с УПП не имеющая. Не потомок УПП, а "БП3+ЗУП3+УТ11" и чуть от КА.
40. AlexO 135 02.03.15 10:04 Сейчас в теме
(36) AllexSoft,
у меня файловая база на основе БСП и там тома хранения есть
Если бы вы потрудились посмотреть более подробно, то тома реализованы как ссылка в реквизите на элемент справочника (или другой объект), содержащий непосредственно файлы/картинки. А не напрямую хранятся в реквизитах той же Номенклатуры.
Именно из-за той самой проблемы, озвучиваемой невероятное количество раз.
И еще раз озвученной в 39)
37. IgorArhangel 9 02.03.15 09:50 Сейчас в теме
ну потому что "с новым интерфейсом" она называется не УПП вовсе) а 1С ERP 2.0, это другая конфа.. в УПП только со старым и переписывать ее под УФ по всей видимости не будут


Значит беру на вооружение статью
http://infostart.ru/public/296744/

Сегодня начинаю делать.
45. IgorArhangel 9 02.03.15 10:12 Сейчас в теме
Если бы вы потрудились посмотреть более подробно, то тома реализованы как ссылка в реквизите на элемент справочника (или другой объект), содержащий непосредственно файлы/картинки. А не напрямую хранятся в реквизитах той же Номенклатуры.
Именно из-за той самой проблемы, озвучиваемой невероятное количество раз.
И еще раз озвученной в 39)


Так что если в подборе поменять чтоб передавалась ссылка на изображение, разве изображение не будет грузится в оперативную память?
47. AlexO 135 02.03.15 10:16 Сейчас в теме
(45) IgorArhangel,
разве изображение не будет грузится в оперативную память?
Цель - чтобы изображение грузилось "по требованию", а не все, какие есть в справочнике.
Нет, не будет, т.к. 1С получит ссылку, а не сразу сам файл весь целиком, сохраненный в реквизите, как, я понимаю, происходит в вашем случае.
48. IgorArhangel 9 02.03.15 10:18 Сейчас в теме
Где бы они не "лежали", в первую очередь все зависит от того, как они подцеплены.
Если напрямую в реквизите - то будут грузиться, если по ссылке на диск - то не будут. Но во втором случае они не будут работать и в веб-клиенте. Только в толстом или тонком.


На данный момент используется только толстые клиенты и все.

Просто мне интересно в подборе за отображение изображения отвечает строка

ЭлементыФормы.ОсновноеИзображение.Картинка = Номенклатура.ОсновноеИзображение.Хранилище.Получить();


Из-за этого они и грузятся в оперативу.
Так как ОС 2008 имеет разрядность х64, таким образом один процесс может занимать до 4-х Гиг оперативы.
51. AlexO 135 02.03.15 10:24 Сейчас в теме
(48) IgorArhangel,
Так как ОС 2008 имеет разрядность х64, таким образом один процесс может занимать до 4-х Гиг оперативы.
Вообще-то, х64 может давать процессу более 2 ГБ - и до конца объема оперативки.
Из-за этого они и грузятся в оперативу.
Так вы их сами и загружаете.
А 1С нисколько не приспособлена для хранения более-менее большого объема файлов.
50. IgorArhangel 9 02.03.15 10:23 Сейчас в теме
Цель - чтобы изображение грузилось "по требованию", а не все, какие есть в справочнике.


Нет. Цель - чтоб в подборе, при переходе на другую строку справочника изображение очищалось из оперативной памяти.
На данный момент все изображения из справочника не грузятся.

Грузятся при подборе. Есть процедура ПриАктивизацииСтроки и она как раз подгружает изображение.

При переходе на другую строку подгружается другое изображение и снова таки остается в оперативе.

Нужно чтоб при переходе на другую строку в оперативу подгружалось новое изображение, а старое, которое было в оперативной памяти очищалось.
52. AlexO 135 02.03.15 10:26 Сейчас в теме
(50) IgorArhangel,
Цель - чтоб в подборе, при переходе на другую строку справочника изображение очищалось из оперативной памяти.
1С не работает с оперативной памятью напрямую. И не предоставляет абсолютно никаких средств для управления/очистки ОП.
Используйте возможности, какие есть.
53. AlexO 135 02.03.15 10:29 Сейчас в теме
(50) IgorArhangel,
На данный момент все изображения из справочника не грузятся.
Вы точно мониторили процесс подбора, и выявили, что память забиватся только после многочисленных переходов по строкам в подборе?
54. AllexSoft 02.03.15 10:29 Сейчас в теме
IgorArhangel не обращай на него внимание, это просто местный тролль.. никакого отношения к 1С он не имеет
58. AlexO 135 02.03.15 10:54 Сейчас в теме
(54) AllexSoft,
не обращай на него внимание... никакого отношения к 1С он не имеет
Вы если про себя пишете, не подмазывайтесь к другим. Четко только за себя.
55. IgorArhangel 9 02.03.15 10:49 Сейчас в теме
Вы точно мониторили процесс подбора, и выявили, что память забиватся только после многочисленных переходов по строкам в подборе?


Да. Загрузил однопиксельные картинки для всей номенклатуры и все стало нормально
57. AlexO 135 02.03.15 10:53 Сейчас в теме
(55) IgorArhangel,
Да. Загрузил однопиксельные картинки для всей номенклатуры и все стало нормально
А ничего, что вы прсото уменьшили объем подгружаемой информации? И никак не обосновали для себя вывод "На данный момент все изображения из справочника не грузятся."
59. IgorArhangel 9 02.03.15 11:52 Сейчас в теме
(57) AlexO,
А ничего, что вы прсото уменьшили объем подгружаемой информации? И никак не обосновали для себя вывод "На данный момент все изображения из справочника не грузятся."


Вывод сделал - изображения нужно хранить в расшареном каталоге. Таким образом оперативная память забиваться не будет, так как отображение изображения будет происходить непосредственно по ссылке и отображаться на прямую из расшареного каталога.


Начал делать все по статье но у меня вылезла вот такая ошибка

{Справочник.Номенклатура.Форма.ФормаЭлемента.Форма(56)}: Ошибка при установке значения атрибута контекста (Картинка)
		ЭлементыФормы.ОсновноеИзображение.Картинка = Добавленные.ПоказатьКартинкуИзРегистра(ЭтотОбъект.Ссылка);
по причине:
Несоответствие типов


Вроде все правильно делал...
60. AlexO 135 02.03.15 12:04 Сейчас в теме
(59) IgorArhangel,
Вывод сделал - изображения нужно хранить в расшареном каталоге.
Учтите, что если будет УФ и веб-клиент - то работать не будет.
63. AllexSoft 02.03.15 12:58 Сейчас в теме
(60) AlexO, у него вся конфа на ОФ.. почитайте выше всю переписку. все поймете
(59) IgorArhangel,
ЭлементыФормы.ОсновноеИзображение.Картинка = Добавленные.ПоказатьКартинкуИзРегистра(ЭтотОбъект.Ссылка);

отладчик в руки и вперед смотреть тип возврата функции ПоказатьКартинкуИзРегистра
пишет же
Несоответствие типов
64. AlexO 135 02.03.15 13:01 Сейчас в теме
(63) AllexSoft,
у него вся конфа на ОФ..
Ничего не мешает ей работать паралелльно и в УФ )
61. AlexO 135 02.03.15 12:05 Сейчас в теме
(59) IgorArhangel,
Начал делать все по статье но у меня вылезла вот такая ошибка
Он ждет картинку (в 1С "картинка" - это двоичный файл), а вы даете ему ссылку, похоже. Или наоборот ))
Суть в этом.
56. IgorArhangel 9 02.03.15 10:50 Сейчас в теме
не обращай на него внимание, это просто местный тролль.. никакого отношения к 1С он не имеет


Ок. буду делать по статье. Как сделаю отпишу.
62. IgorArhangel 9 02.03.15 12:12 Сейчас в теме
Учтите, что если будет УФ и веб-клиент - то работать не будет.


Учту. В ближайшем будущем этого не понадобиться.
65. IgorArhangel 9 02.03.15 14:33 Сейчас в теме
отладчик в руки и вперед смотреть тип возврата функции ПоказатьКартинкуИзРегистра
пишет же


Да уже разобрался. Сам тупанул.

Теперь осталось пару пустяков.
66. IgorArhangel 9 02.03.15 16:21 Сейчас в теме
Хранение в сетевом диске сделал.

Все вроде нормально.

Сейчас пишу обработку для проставления картинок.
Не могу понять как правильней написать цикл для добавления изображений в базу.

Суть. Есть все фото номенклатуры в сетевой папке, нужно будет по нажатию на кнопку проставлять только фото которые появились.
Так вот вопрос, что мне сначала перебирать? Папку на наличие изображений, или по номенклатуре проверять?
67. AllexSoft 02.03.15 17:01 Сейчас в теме
(66) IgorArhangel, переформулируй, а то я ничего не понял ))
68. IgorArhangel 9 02.03.15 19:19 Сейчас в теме
Все фото в сетевой папке. Мне нужно их как-то поставить в регистр сведений. Так как я не хочу это делать вручную.

Я пишу обработку, чтоб добавить автоматом все фото.
Потом в месяц будет добавляться по 10-20 новых.
Как мне написать в обработке чтоб добавлялись только новые?
69. AlexO 135 03.03.15 09:17 Сейчас в теме
(68) IgorArhangel,
Потом в месяц будет добавляться по 10-20 новых.
Как мне написать в обработке чтоб добавлялись только новые?

Никак. В рамках существующих условий.
а) все фото равноценны
б) у номенклатуры нет поле "Дата".
Поэтому нужно менять условия:
а) либо брать фото после определенной даты
б) добавить и вести поле "Дата" у номенклатуры.
70. IgorArhangel 9 03.03.15 09:27 Сейчас в теме
Но можно же проверять на наличие записи в регистре сведений.
Если записи с фото нет, то добавить, если есть то не трогать.

Как я понимаю.
71. IgorArhangel 9 03.03.15 09:34 Сейчас в теме
Я не могу дописать обработку для проставления фото в регистр сведений. Не получается именно вставить запить объект. Он задан в регистре сведений с типом СправочникСсылка.Номенклатура.

Вот код
Процедура ДействияФормыПроставитьФото(Кнопка)
	// Вставить содержимое обработчика.
	ПутьКСерверу = Константы.ПутьККартинкамНаСервере.Получить();
	Запрос = Новый Запрос;
	Запрос.Текст =
	"ВЫБРАТЬ
	|	Номенклатура.Ссылка,
	|	Номенклатура.Код,
	|	Номенклатура.Наименование,
	|	Номенклатура.ЭтоГруппа,
	|	Номенклатура.ВидНоменклатуры,
	|	Номенклатура.Представление
	|ИЗ
	|	Справочник.Номенклатура КАК Номенклатура";
	Результат = Запрос.Выполнить();
	ВыборкаНоменклатура = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
	
	Пока ВыборкаНоменклатура.Следующий() Цикл
    	Если НЕ ВыборкаНоменклатура.ЭтоГруппа Тогда
			Если ВыборкаНоменклатура.ВидНоменклатуры = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Товар") Тогда
				Если НайтиФайлы(ПутьКСерверу, СокрЛП(ВыборкаНоменклатура.Код)+".jpg").Количество() > 0 Тогда
					Набор = РегистрыСведений.ИзображенияНоменклатуры.СоздатьНаборЗаписей();
					Набор.Прочитать();
					НовЗапись = Набор.Добавить();
					НовЗапись.Объект = ВыборкаНоменклатура.Ссылка.ПолучитьОбъект();
					НовЗапись.Путь = СокрЛП(ВыборкаНоменклатура.Код)+".jpg";
					НовЗапись.Основное = Истина;
					Набор.Записать();
					Сообщить (СокрЛП(ВыборкаНоменклатура.Код)+".jpg" + " обновлено");
			    КонецЕсли;
			КонецЕсли;
		КонецЕсли;				
	КонецЦикла;
КонецПроцедуры
Показать


Пробовал уже по разному. Вот эта строка не отрабатывает
НовЗапись.Объект = ВыборкаНоменклатура.Ссылка.ПолучитьОбъект();


Может кто что подскажет.
Другие поля заполняются нормально.
72. ipoloskov 162 03.03.15 09:44 Сейчас в теме
А если хранить превьюхи (уменьшенные варианты картинок) в отдельном справочнике? И при показе картинки в форме списка читать и показывать его, а при нажатии на картинку - открывать полный вариант.
73. IgorArhangel 9 03.03.15 10:36 Сейчас в теме
А если хранить превьюхи (уменьшенные варианты картинок) в отдельном справочнике? И при показе картинки в форме списка читать и показывать его, а при нажатии на картинку - открывать полный вариант.


Картинки сами по себе не большие порядка 100 - 200 килобайт.
Та и загружать изображения и в папку и в справочник, как-то не очень впечетляюще.

Просто на данном этапе я стараюсь как можно больше автоматизировать данный процесс.
74. sergling 34 04.03.15 15:51 Сейчас в теме
У вас два варианта решения:
1. разобраться в коде, который не обдуманно жрет данные в память.
2. попытаться научить 1с использовать положенные ей 4 гб в 64-битной ОС. Для этого надо поменять один флаг в exe-файле. Но и в этом случае ей может не хватить 4 ГБ, т.к. смотри пункт 1.
78. AlexO 135 04.03.15 17:24 Сейчас в теме
(74) sergling,
попытаться научить 1с использовать положенные ей 4 гб в 64-битной ОС
О??
Для этого надо поменять один флаг в exe-файле.
О?!?!
(75) IgorArhangel,
Там толку-то разбираться, я уже его вдоль и поперек перекопал.
Вы так и не получили ни подтверждения свой версии "память захватывается при переходе по строкам", ни опровержения.
Вот и стукнул вариант хранения фото не в базе а на диске.
Самый плохой вариант. См. выше обсуждение.
(33) IgorArhangel,
Поставил себе УПП
И не нашел где включаются тома хранения.
По-моему, единственная конфа, где это реализовано - 1С Документооборот на УФ.
(77) IgorArhangel,
И там как раз процесс и достигает таких колосальных размеров
Потому что на сервере вы не один работаете. И поэтому все множится на количество пользователей.
82. sergling 34 04.03.15 17:53 Сейчас в теме
83. IgorArhangel 9 04.03.15 17:57 Сейчас в теме
(82) sergling, Так у меня и так 4 гига выделяется под процесс 1с.
91. AlexO 135 10.03.15 09:28 Сейчас в теме
(82) sergling, ерунда какая-то.
Ваш патч дезассемблит exe, встраивается в код, компиллируется обратно? Какое отношение некий патч (причем на Дельфи) для TES - имеет к 1С?
Вы совсем заигрались.
75. IgorArhangel 9 04.03.15 16:44 Сейчас в теме
1. разобраться в коде, который не обдуманно жрет данные в память.
2. попытаться научить 1с использовать положенные ей 4 гб в 64-битной ОС. Для этого надо поменять один флаг в exe-файле. Но и в этом случае ей может не хватить 4 ГБ, т.к. смотри пункт 1.


1.Код как код. Там толку-то разбираться, я уже его вдоль и поперек перекопал.
Суть такова что изображения из хранилища жрут оперативную память.

2. У меня 1С и так хавает до 4-х гиг. Так а толку, на всех оперативы не наберешься. Вот и стукнул вариант хранения фото не в базе а на диске.
76. sergling 34 04.03.15 16:54 Сейчас в теме
(75) IgorArhangel, Вы же написали что потребляет 1.5 гига и падает, или ситуация уже другая?
77. IgorArhangel 9 04.03.15 17:11 Сейчас в теме
Проблема в том что процесс 1С занимает 3,5 гига при нормальной работе. Потом в подборе вместо изображений появляются большие кресты.


То я писал когда перенес на ноут для теста.

На самом деле база стоит на серваке
И там как раз процесс и достигает таких колосальных размеров
79. Amelk 04.03.15 17:32 Сейчас в теме
можно попробовать оптимизацию самого сервера СУБД, например (Update Statistic)
80. IgorArhangel 9 04.03.15 17:38 Сейчас в теме
Вы так и не получили ни подтверждения свой версии "память захватывается при переходе по строкам", ни опровержения.


Как раз я эту версию и подтвердил.

Самый плохой вариант. См. выше обсуждение.


Но оно то работает нормально.. только осталось донастроить.. А то что-то не совсем гладко пока работает.

По-моему, единственная конфа, где это реализовано - 1С Документооборот на УФ.


Я это уже понял. Доставать логику из документооборота я не хочу. Та может и не получиться.
81. IgorArhangel 9 04.03.15 17:38 Сейчас в теме
можно попробовать оптимизацию самого сервера СУБД, например (Update Statistic)


Так у меня и сервера, то нет. База файловая.
84. sergling 34 04.03.15 18:04 Сейчас в теме
это было пожелание в контексте ноута, про сервер уже понял.
85. IgorArhangel 9 04.03.15 18:04 Сейчас в теме
это было пожелание в контексте ноута, про сервер уже понял.


Та ноут это просто для работы..
Для программинга..
Тут много и не надо как раз
86. IgorArhangel 9 05.03.15 11:15 Сейчас в теме
Короче сделал хранение файлов в сетевом каталоге.

И о беда, изображения все равно забивают оперативу.
Только что все доделал, прошелся по номенклатуре с показом изображений и оператива забилась снова до 3.7 гига и меня выкинуло из 1с.

Что же за беда такая печальная.
87. AllexSoft 05.03.15 15:19 Сейчас в теме
(86) IgorArhangel, обрати внимание на (28), сделай не поле картинки, а поле HTML документа
88. IgorArhangel 9 05.03.15 16:04 Сейчас в теме
Сделал поле табличного документа.

В процедуре пробую его заполнить
ЭлементыФормы.ОсновноеИзображение.ПолеHTML = Добавленные.ПоказатьКартинкуИзРегистра(ТекущиеДанныеСписка.Ссылка);


Пишет что поле не обнаружено.
{Справочник.Номенклатура.Форма.ФормаСписка.Форма(154)}: Поле объекта не обнаружено (ПолеHTML)
			ЭлементыФормы.ОсновноеИзображение.ПолеHTML = мПустаяКартинка;


Хотя элемент основное изображение имеет тип Поле HTML.

Странно
89. AllexSoft 05.03.15 17:50 Сейчас в теме
(88) IgorArhangel, надо не элемент формы заполнять, а данные (реквизит) к которому привязано это поле
90. IgorArhangel 9 06.03.15 10:35 Сейчас в теме
Такая беда у меня.

Реквизит картинки имеет тип СправочникСсылка.ХранилищеДополнительнойИнформации

вот в чем беда

и как я понял на нем много чего подвязано.
И когда я пытаюсь присвоить этому реквизиту свое значение пишет не соответствие типов, ну оно то и понятно.

Буду думать как это решить.
95. IgorArhangel 9 24.03.15 09:08 Сейчас в теме
Работа с сетевыми файловыми Бд определяется в первую очередь не размером базы, а количеством одновременно подключенных пользователей.
База может быть 1 Гб, а пять пользователей будут вешать её напрочь.


Вот именно.
Я не писал что база весит 16ГИГ. База весит 6ГИГ.

Одновременно работает 8-10 пользователей. База тупит невероятно.
Как я понял это из-за того, что одновременно, например с одной таблицей работают 5 пользователей. Как же базе не тупить.
А что с этим делать не знаю.
Перейти на SQL на данный момент нет возможности, так как это нужно покупать лицуху на сервак. А денег не много.
Та даже если и перейти то базу нужно будет реально перерабатывать, сразу уже на управляемые формы. А это для меня еще сложновато, так как с 1С работаю 4 месяца.
96. tarassov 111 24.03.15 10:27 Сейчас в теме
(95) IgorArhangel,
А если разложить одну базу на несколько, например с помощью РИб, и обмениваться между ними информацией?

Но по-хорошему нужен SQL, без него - только "костыли"
97. AlexO 135 24.03.15 10:51 Сейчас в теме
(95) IgorArhangel,
Как я понял это из-за того, что одновременно, например с одной таблицей работают 5 пользователей
Не совсем. Главная причина - это то, что 1С не СУБД, и не может следить и обрабатывать множественный доступ к таблицам. А также много еще чего не делает (резервирование, оптимизация, контроль записи) - можно сказать, что не делает ничего из области СУБД.
(96) tarassov,
А если разложить одну базу на несколько, например с помощью РИб, и обмениваться между ними информацией?
Будет еще больше проблем. К файловому варианту - добавятся проблемы обмена и синхронизации баз, которые в 1С тоже решены чуть более, чем никак.
98. IgorArhangel 9 24.03.15 11:47 Сейчас в теме
та и вообще 1С недоработана до нормально логического конца, именно конца.
Оставьте свое сообщение
Вакансии
1С аналитик
Москва
зарплата от 210 000 руб.
Полный день

Руководитель направления 1С
Москва
зарплата от 350 000 руб.
Полный день

1С Программист
Москва
зарплата от 180 000 руб.
Полный день

Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)