1с как добавить элемент в существующий массив #748125


#0 by inkvizitr
1с как добавить элемент в существующий массив
#1 by echo77
Массив.Добавить(ТвойЭлемент) ?
#2 by inkvizitr
неет, как данные в общий массив добавлять из разных процедур
#3 by rs_trade
Ему картинку надо. Читать похоже не умеет.
#4 by Nuobu
Передавать этот массив как папаметр в процедуре.
#5 by Дмитрий
передавать массив в эти разные процедуры, например
#6 by fisher
Что такое "общий массив"? Где он определен, какая у него область видимости?
#7 by inkvizitr
нет! есть массив и мне нужно туда добавлять данные с разных источников данных, и нужно чтобы все эти данные добавлялись, у меня получается что массив каждый раз перетирается(создается новый)
#8 by sash-ml
С одного пользователя или нескольких?
#9 by Nuobu
Может, потому что в этих процедурах ты пишешь Массив = новый Массив?
#10 by inkvizitr
даа.. иначе в других процедурах и функциях он его не видет и просит объявить
#11 by Славен
имхо, забанить бы такого, читаем 0 и читаем , телепатов ищешь, или просто не в ладах с общением?
#12 by Славен
для начала УФ? Модуль объекта, формы ...?
#13 by Nuobu
Так ты его параметром передай.
#14 by Lama12
Чего банить? Он же честно написал что он инквизитор. Вот святая инквизиция и карает мозги грешников. Почитай про область видимости. Посмотри что такое передача параметра по ссылке и по значению.
#15 by Jokero
Да ты не умничай, ты пальцем покажи!(с) Код в студию - где объявляешь, где создаешь, где заполняешь?
#16 by Lama12
Ты чего? Тссс... Массив надо сначала обернуть в список значений, а лучше в структуру или соответствие. Потом сериализовать через ЗначениеВСтроку. После этого строку записать в файл. А вот в других местах из файла считывать. Тогда массив будет доступен везде. Кстати. Если будешь передавать с сервера на клиент в УФ, то посмотри еще ВременноеХранилище.
#17 by Mirnin
А если создать периодический регистр сведений и писать значения массива туда, то потом можно будет даже воссоздавать массив на любую дату. Кстати, в таком случае можно будет даже отчет по изменениям массива сделать, что, согласитесь, немаловажно.
#18 by Nuobu
Какой важный массив!
#19 by EverGreenMouse
тогда лучше в Справочник, а еще лучше в ТЧ документа какого-нибудь :)
#20 by inkvizitr
А можно ли как то сделать проверку существует ли существующий массив и тогда заново его не создавать а добавлять в существующий массив элименты
#21 by zippygrill
лучше бы ничего не писал
#22 by inkvizitr
А можно ли как то сделать проверку существует ли существующий массив и тогда заново его не создавать а добавлять в существующий массив элименты
#23 by Ненавижу 1С
"существует ли существующий массив" - а звучит!
#24 by Nuobu
Если Массив = Неопределено Тогда Массив = Новый Массив; КонецЕсли
#25 by Nuobu
Лучше код покажи, как ты вызиваешь процедуры по заполнению существующего или не существующего массива.
#26 by fisher
- Как добавить несуществующий элемент в несуществующий массив? (с) 1С-ники постигают дзен
#27 by fisher
"Семь реинкарнаций одного массива" (с) Притча о молодом 1С-нике
#28 by inkvizitr
Ошибка Если <<?>>Массив = Неопределено Тогда  (Проверка: Тонкий клиент)
#29 by inkvizitr
Переменная не определена (Массив)       Если <<?>>Массив = Неопределено Тогда  (Проверка: Тонкий клиент
#30 by inkvizitr
ап
#31 by fisher
Если ты хочешь, чтобы твой массив был доступен в функциях клиентского модуля, он должен быть объявлен как переменная модуля.
#33 by inkvizitr
Ошибка Переменная не определена (Массив)
#34 by EverGreenMouse
у объекта создали реквизит "Массив"?
#35 by inkvizitr
Да
#36 by 18_plus
у твоей 1с грохнулась telepatAPI.dll
#37 by Nuobu
Так его создать нужно!
#38 by Nuobu
Это не может не радовать!
#39 by Nuobu
И где ты в Объекте взял массив?
#40 by inkvizitr
а как его взять?
#41 by inkvizitr
у тебя в "Процедура Добавить" массив существующий перезатирается
#42 by Nuobu
Справа вверху на форме создай новый реквизит. Назови его РеквизитМассив. С типом - произвольный. При открытии формы напиши: РеквизитМассив = Новый Массив; А потом в процедурах, которые на клиенте, пиши: ЭтаФорма.РеквизитМассив.Добавить(Элемент);
#44 by фобка
Толсто
#45 by inkvizitr
Ошибка {Обработка.РаботаСМассивом.Форма.Форма.Форма}: Ошибка при установке значения атрибута контекста (РеквизитМассив) РеквизитМассив = Новый Массив; по причине: Тип "Массив" не может использоваться в данных формы
#46 by Nuobu
Ладно, я сдаюсь.
#47 by inkvizitr
создал реквизит формы с типом произвольный, при открытии формы написал "РеквизитМассив = Новый Массив;" ,  ошибка "Тип "Массив" не может использоваться в данных формы"
#48 by Славен
))) тут как раз тот случай, когда надо коленку прострелить
#49 by inkvizitr
Решил Это в модуле приложения перем  МассивЗначений экспорт; дальше в модуле формы &НаКлиенте
#50 by inkvizitr
и тогда он начал дописывать в существующий массив а не перезатирать его
#51 by Nuobu
Молодец!
#52 by Ненавижу 1С
особенно это будет весело, когда откроют несколько одинаковых форм
#53 by inkvizitr
но тогда я думаю можно тогда проверку воткнуть на определенность массива
#54 by Ненавижу 1С
все сыпаться будет в один массив
#55 by Nuobu
Так ему и нужен общий. Самый общий из общих массивов.
#56 by Ненавижу 1С
зачем?
#57 by 1sanekmaloi1
Чтоб не затирался
#58 by Ненавижу 1С
не-не, вообще зачем?
#59 by fisher
Во-первых, это красиво. Может, человек хочет изобрести систему обмена сообщениями между формами имени себя любимого. Или еще что-то головокружительное.
#60 by ВРедная
Интересно, будет следующий вопрос про то, почему этот массив не сохраняется при перезапуске?
#61 by Smallrat
Сага о X, Y и Z... ...или о том, как же важно правильно формулировать, чего мы хотим. Однажды Новичок захотел сделать X. Но поскольку Новичок был новичком, X с ходу у него сделать не получилось... Ну, бывает, ничего в этом плохого нет: все мы были когда-то новичками. Чтобы решить проблему, Новичок решил воспользоваться форумом по программированию. Вы думаете он создал там тему вида: "Я хочу получить X. Пытаюсь сделать 111, получаю 222. Как сделать X?"? Нет! Новичок решил (ошибочно, т.к. Новичок пока не обладает достаточным знанием), что если он сумеет сделать Y, то с помощью Y он получит и X. Поэтому он написал: "Делаю 111, получаю 222. Как получить Y?" (ещё бывает, что Новичок задаёт только "Как сделать Y?"). Чаще всего, Y бывает невозможным, некорректным, сложным или вообще страшно извращённым и нелогичным действием. У всех Понимающих людей вопрос "как сделать Y?" вызывает недоумение: зачем это нужно? Это же бессмысленно. Всеми силами (иногда с привлечением утюга!) пытаются выпытать у Новичка Понимающие, что же ему на самом деле нужно. Но не сдаётся Новичок: он же хочет узнать, как сделать Y. Каких только Слонов не рождали глубокие умы, пытаясь постичь неисповедимые пути Новичка! Иногда даже бывает так, что Понимающие знают ответ на вопрос "как сделать Y?", но специально его не говорят, потому что эти действия лишены смысла. Они ещё надеются наставить Новичка на путь истинный. Но вот, используя шаманский бубен, миелофон, шестое чувство, телепатор и прочие БС (Божественные Силы) кто-то из Понимающих вопрошает: - А, может быть, вы хотите сделать X? - Да, я хочу получить X. Как мне сделать Y? - Аааа! Ну тогда вам не нужно Y! Вам нужно Z! Если вы сделете Z так и сяк, то потом с помощью Z вот так и вот этак вы получите X. - Ой, правда. Спасибо! Что ж, вот пример хорошей и доброй концовки, когда все остаются довольными. Но бывает и так, что кто-то из начинающих Понимающих (вчерашний Новичок), думая, что этим он помогает Новичку (или же сам Понимающий, но уже от безысходности, в надежде, что Новичок разумно распорядится даруемой в его руки Божественной Силой), даёт ответ на вопрос "как же сделать Y". Ура! - кричит Новичок и убегает доделывать Страшного Монстра, при встрече с которым потом даже самым смелым Понимающим целый месяц снятся кошмары. Тёмные Силы празднуют победу в этот день. Душа Новичка обречена гореть в геене огненной за грехи свои. А ещё бывает так, что Новичок думает, что ему отвечает другой новичок. И кажется ему, что ответ с Z неверен. И тогда он говорит: "мне не нужен Z! Мне нужно сделать Y!". И если переубедить Новичка в том, что ему нужен Z, не удаётся, Новичок уходит на другой форум, где задаёт вопрос: "Мне нужен X! Как мне сделать Y? Использовать Z не предлагать!!!!!!"
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С