1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
1 | |
Сохранить массив Справочников в файл20.10.2013, 20:40. Показов 4993. Ответов 25
Метки нет (Все метки)
1С Предприятие 8.2
Управляемые формы. Как сохранить массив в файл, если в нем хранятся Справочники как объекты. Сейчас мне достаточно использовать функцию ЗначениеВФайл, но правильно сохранить не получается.
0
|
20.10.2013, 20:40 | |
Ответы с готовыми решениями:
25
Осуществляю выгрузку справочников в текстовый файл. Считать массив из файла и отсортировать его. Отсортированный массив сохранить в файл Создать массив натуральных трёхзначных чисел. Открыть файл для редактирования. В новый файл сохранить числа кратные трём Сохранить 3d массив в файл |
900 / 877 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
|
|
20.10.2013, 21:42 | 2 |
0
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
20.10.2013, 22:08 [ТС] | 3 |
Не по теме: Как я не люблю вопрос Зачем :D У меня мало практического опыта работы в 1С У меня вообще нет опыта работы с файлами кроме как с txt Мне нужно облегчить себе жизнь, написав несложную обработку. Чтобы облегчить себе жизнь обработкой, мне достаточно перенести 2 справочника (В одном из них несколько справочников) из одной конфы в другую. (одна локальная-черновая, вторая серверная рабочая. Сами конфигурации абсолютно одинаковые) Т.к. с теми справочниками никто кроме меня не работает, то я посчитал, что записав их в 2 отдельных массива , я смогу записать их как объекты на диск для копирования с черновой конфы в рабочую. Т.к. я бы предпочел знать то чего не знаю, даже если потом использовать не буду. Т.к. я пока еще понятия не имею о сериализаторах, xml и как с ними работать. Т.к. мне это интересно. Т.к. я не знаю какой подход правильный. (по передаче объектов из в) Т.к. я не разобрался когда пытался такое сделать. Т.к. я весь день убил, но так и не осилил простую с виду задачу. Т.к. я посчитал, что такой вариант выглядит проще чем те, которые мне приходили на ум. много еще причин нужно? Мне не обязательно именно так (чтоб массив в файл), но я не отказываюсь от того, что мне это интересно.
0
|
900 / 877 / 8
Регистрация: 15.03.2012
Сообщений: 2,680
|
|
20.10.2013, 22:25 | 4 |
daslex, "сохранить массив в файл" и перенести данные между двумя базами все таки разные вещи.
1. Изучите в синт. помощнике описание и методы объекта ТекстовыйДокумент . 2. Обходя значения массива в цикле записывайте их в текстовый документ. Относительно ваших дальнейших изысканий в области обменов данными, я бы посоветовал изучить конфигурацию "Конвертация данных". Ваша задача с помощью нее решается за 1 минуту без программирования.
1
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
20.10.2013, 22:57 [ТС] | 5 |
Большая вероятность есть того, что текстовый документ мне не подходит.
Конвертацию данных - буду смотреть. Добавлено через 25 минут Я знаю, что при подобном подходе могут проявится некоторые нехорошие моменты, но так как обработку я делаю исключительно под себя и те данные, которые могут быть нарушены создаются исключительно мной, то мне не трудно доделывать будет. Гораздо труднее и намного дольше руками копировать всё. (Эти загрузки, зависания, вылеты с бухты барахты с сообщением об ошибке столько времени отнимают). Если я знаю как сохранять (именно знаю), то, значит то, что мне нужно я выцеплю точно. Вопрос как бы в силе, несмотря на последний совет.
0
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
20.10.2013, 23:51 [ТС] | 7 |
Tklwegsd, спасибо.
нашел в нете, скачал, использовал (типа посмотрел как работает). Но в будущем мне точно нужно будет перекидывать информацию из разных баз. Уже сейчас нужно. Пока еще можно обойтись текстовым документом, но текстовый документ удобен совсем не всегда. Поэтому я бы предпочел узнать сейчас некоторые моменты, т.к. это лучше чем узнавать их в случае нехватки сроков (никто будущего не знает)
0
|
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
|
|
21.10.2013, 00:14 | 9 |
Наиважнейший вопрос. Он касается алгоритма. Ламер упрямо долбится, как правило, в ворота, одиноко стоящие посреди поля. Это образно. А предметно - если явный алгоритмический косяк - к примеру, сохранять объекты, то и ставится вопрос "зачем". Объект динамичен. ЧТО ВЫ ХОТИТЕ СОХРАНИТЬ?
1
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
21.10.2013, 00:44 [ТС] | 10 |
Хотел в Документообороте 1.3 сохранить правила Автозаполнения шаблонов.
(Справочник ПравилаАвтозаполненияФайлов и его табличную часть ДанныеАвтозаполнения) (имена даю не совсем точные) Обработка-то, упомянутая в теме вполне меня устраивает для решения задачи. Дальше просто что-то типа спортивного интереса. Несомненно, я попытаюсь научиться работать с конвертацией данных. Но интуитивно могу догадываться, что в некоторых ситуациях ручная работа будет выгоднее. (мои такие догадки ничем не обоснованы, просто ощущение есть). Не по теме:
0
|
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
|
|
21.10.2013, 01:18 | 11 |
принято
0
|
857 / 656 / 111
Регистрация: 01.11.2012
Сообщений: 2,411
|
|
21.10.2013, 10:10 | 12 |
Прочитал несколько раз, так и не понял в чем проблема?
0
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
21.10.2013, 10:38 [ТС] | 13 |
если в массиве хранятся объекты типа справочник, то ЗначениеВФайл("путь",Массив) сохраняет в файл не в виде массива объектов, а в виде какого-то массива (может только колонку первую или строку, не вникал я)
если условно предположить, что в справочнике 5000 реквизитов, надо такой перекинуть из одной конфы в другую, то решение с текстовым файлом вроде бы мало подходит. Это одного однотипного кода сколько получится. если писать для пользователей, которые далеки от программирования, то им, возможно, невозможно будет осилить конвертацию данных. (такой тип людей есть, что им кнопка нужна и такой тип людей точно работает с 1с как пользователи). Тут как ни крути самописное спасет. главная проблема в том, что я не знаю как сохранить массив, содержащий справочники, на диск. и не придумал какой путь правильный (чтобы если не массивом справочников в файл на диск).
0
|
857 / 656 / 111
Регистрация: 01.11.2012
Сообщений: 2,411
|
|
21.10.2013, 11:05 | 14 |
Я через XBase перенос делал.
1
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
21.10.2013, 11:30 [ТС] | 15 |
Я могу сказать немного странную вещь.
Но, Предположим пользователь работает менеджером. Он ведет работу с документами, названия у которых не очень стандартные. (пусть даже простая смесь латинских символов). Сам пользователь работает с двумя разными конфигурациями. В конфигурациях внутри базы хранят информацию об одних и тех же объектах (сами реквизиты объектов могут разнится, но по сути это 1 объект, описанный в двух конфигурациях.) так как с конфигурациями работает пользователь, то чтобы автоматизировать его работу не заставляя его запускать тысячу программ для каждой его цели, можно создать волшебную для него кнопку. Загрузить в. Выгрузить для. Сам по себе смысл вопроса в том, чтобы автоматизировать то, что можно автоматизировать, т,к. 1c изначально предназначен для автоматизации . А простое копирование мышкой имен и названий бывает приводит к ошибкам(не то выбрал, не то скопировал, не туда вставил) я посчитал, что работать с объектами как с объектами мне поможет массив объектов. Мне не нужно следить за ссылочной целостностью, скоростью или за чем-то ещё. Бывает же необходимо добавить объект конфигурации программно и добавляют. Я бы просто цеплял данные из сохраненного объекта и записывал их в создаваемое.
0
|
857 / 656 / 111
Регистрация: 01.11.2012
Сообщений: 2,411
|
|
21.10.2013, 11:32 | 16 |
А планы обмена настроить если между базами, не подойдет?
1
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
21.10.2013, 11:55 [ТС] | 17 |
Не знаю. Честно, говоря, тяжело придумывать то, с чем пока не встречался.
Тяжело сказать о том, с чем пока еще не работал. Если план обмена можно настроить между абсолютно любыми (и самописными и типовыми) конфигурациями и Если там можно описывать запросы, чтобы вытаскивать по какому-то реквизиту объекта всё, что к этому объекту принадлежит, то, возможно, подойдет. (Всё - это то, что даже из самых глубоких недр по хитросплетенным цепочкам внутри базы) Более точный ответ придумать мне тоже сложно.
0
|
857 / 656 / 111
Регистрация: 01.11.2012
Сообщений: 2,411
|
|
21.10.2013, 11:58 | 18 |
Ну я могу только посоветовать накапливать информацию, читать, гуглить, так и разберешься. А уже по конкретным проблемам обращаться сюда, помогут. Тут я думаю уже всё расписали, что можно сделать
1
|
1373 / 596 / 199
Регистрация: 02.08.2011
Сообщений: 2,882
|
|
21.10.2013, 12:50 [ТС] | 19 |
Я пока и без поисков понял одну важную вещь. )
даже если я сохраню массив объектов на диск, то загрузить скорее всего не выйдет. т,к конфигурация может не знать используемых типов. Можно было и сразу сказать. Я знаю вы это точно знали, но устроили мне допрос тут :-D за полезные советы всем спасибо. Тему можно считать закрытой. Неправильный вопрос хорошему не научит.
0
|
857 / 656 / 111
Регистрация: 01.11.2012
Сообщений: 2,411
|
|
21.10.2013, 13:04 | 20 |
Что за ерунда? Ты же сам написал. что у тебя 2 одинаковые конфигурации, каких типов они могут не понять?
Настраиваешь план обмена и всё работает. То что заводишь в одной переносится в другую. Есть наверняка написанные обработки по переносу данных, стоит в инете порыться. Да и перенос несложно написать используя любой формат практически.
0
|
21.10.2013, 13:04 | |
21.10.2013, 13:04 | |
Помогаю со студенческими работами здесь
20
Сохранить массив в файл Сохранить массив объектов в файл Заполнить массив и сохранить в файл Сохранить массив данных в файл Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |