Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Перенос документов 7,7-8,1          
kuman Подменю пользователя
сообщение 26.11.13, 18:56
Сообщение #1

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Здравствуйте!
Переношу документы из 7,7 в 8,1 через Эксель с помощью типовой обработки 8,1 =Загрузка данных из табличного документа=
Файл Экселя в виде (авансовые отчеты)
Номер Дата Время Сумма
АО-0000002 08.05.08 12:02:10 1276
АО-0000001 05.07.08 12:00:50 250
АО-0000004 08.09.08 12:00:10 30
АО-0000003 09.09.08 12:00:20 84.1
АО-0000025 18.02.09 12:00:10 108
АО-0000001 03.03.09 11:55:37 135
АО-0000002 15.03.09 19:20:48 280
АО-0000003 30.03.09 12:01:20 260
АО-0000041 31.03.09 12:00:10 51.2
АО-0000004 10.04.09 12:01:30 500
АО-0000005 28.04.09 09:40:05 200
АО-0000006 02.05.09 12:00:40 440
АО-0000007 15.05.09 14:23:49 470
Со всеми переменными разобрался, но не могу добиться, чтобы обработка читала дату документа.
В примере, который идет вместе с обработкой в экселе дата стоит в формате 20090113185138 и в закладке события дописаны команды
ДатаДок=Дата(СОКРЛП(ТекстыЯчеек[2]));
Обработка выдает-Получение элемента по индексу для значения не определено.
Меняю дату в формат 20090113185138-Получение элемента по индексу для значения не определено
Мне время вновь созданного документа не актуально, актуальна лишь дата.
Я в программировании 1С не силен, подскажите как можно поступить в данном случае.
Спасибо.

logist Подменю пользователя
сообщение 26.11.13, 19:21
Сообщение #2

Про1С-ник
Иконка группы
Квалифицированный бухгалтерГений телепатии и социального моделированияЗа заслуги на форуме в 2010 годуМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 9564
Из: Kharkiv, UA
Спасибо сказали: 2536 раз
Рейтинг: 0

Цитата(kuman @ 26.11.13, 19:56) *
Получение элемента по индексу для значения не определено.

Проблема тут, а не в дате:
Цитата(kuman @ 26.11.13, 19:56) *
ТекстыЯчеек[2]

1С говорит что в таблице(массиве, или что там у вас) нет элемента с индексом 2


Signature
Личные бесплатные консультации не даю, для этого есть форум!

kuman Подменю пользователя
сообщение 26.11.13, 19:32
Сообщение #3

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(logist @ 26.11.13, 19:21) *
Проблема тут, а не в дате:

1С говорит что в таблице(массиве, или что там у вас) нет элемента с индексом 2


Я думал, что [2]-это номер столбца
Как написать, чтобы брал данные из второго столбца?

alex040269 Подменю пользователя
сообщение 26.11.13, 19:37
Сообщение #4

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

А откуда взялись ТекстыЯчеек?
Я не телепат smile.gif я только учусь wink.gif


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

kuman Подменю пользователя
сообщение 26.11.13, 19:40
Сообщение #5

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(alex040269 @ 26.11.13, 19:37) *
А откуда взялись ТекстыЯчеек?
Я не телепат smile.gif я только учусь wink.gif


забыли о командах
Есть массив данных (см. выше)
Какую команду написатьв собитыях, чтобы дата новых документов считывалась с массива?

Zaval Подменю пользователя
сообщение 26.11.13, 19:56
Сообщение #6

Крутой
Иконка группы
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0

Цитата(kuman @ 26.11.13, 18:56) *
Я в программировании 1С не силен

В каком именно - 7.7 или 8.Х?
И сразу - "перенос документов"? Вы представляете, сколько времени займет у Вас перенос таким способом?

На закладке Настройки включите ручную нумерацию колонок и расставьте все по-своему.

И... это, почему 8.1 а не 8.2?

Сообщение отредактировал Zaval - 26.11.13, 20:04

Vofka Подменю пользователя
сообщение 26.11.13, 20:03
Сообщение #7

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4520 раз
Рейтинг: 3642.8

Цитата(Zaval @ 26.11.13, 19:56) *
Вы представляете, сколько времени займет у Вас перенос таким способом?

Откуда вы знаете количественные характеристики базы? Может там всех документов 100 штук. И сколько это может занять? Я думаю, с предварительной подготовкой, в день можно уложиться на среднестатистической базе.

Сообщение отредактировал Vofka - 26.11.13, 20:04

kuman Подменю пользователя
сообщение 26.11.13, 20:12
Сообщение #8

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Zaval @ 26.11.13, 19:56) *
В каком именно - 7.7 или 8.Х?
И сразу - "перенос документов"? Вы представляете, сколько времени займет у Вас перенос таким способом?

На закладке Настройки включите ручную нумерацию колонок и расставьте все по-своему.

И... это, почему 8.1 а не 8.2?


В настройках нумерация колонок ручная - я же писал разобрался, но заполнение даты идет програмным путем-тут я и прошу помоши.
А в каком программировании я не силен-имеет разницу?
Документов на самом деле не много, но вручную никак.

Zaval Подменю пользователя
сообщение 26.11.13, 21:07
Сообщение #9

Крутой
Иконка группы
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0

Цитата(Vofka @ 26.11.13, 20:03) *
Откуда вы знаете количественные характеристики базы? Может там всех документов 100 штук. И сколько это может занять? Я думаю, с предварительной подготовкой, в день можно уложиться на среднестатистической базе.

Не знаю smile.gif Главное - чтобы ТС знал и понимал, во что ввязывается...

Цитата(kuman @ 26.11.13, 20:12) *
В настройках нумерация колонок ручная - я же писал разобрался

Не вижу, уверены, что на этом форуме? smile.gif

На той платформе, где более "не силен", нужно свести всякие манипуляции к минимуму.

Нпр, можно при выгрузке из 7.7 сразу сформировать в одну ячейку ГГГГММДДччммсс, тогда в обработке
в строке Дата указать номер колонки, РежимЗагрузки - Вычислять, Выражение - что-то вроде
Дата(СокрЛП(ТекстЯчейки))

или
Значение = Дата(СокрЛП(ТекстЯчейки))

Точно не скажу - давно с этим не возился.

А так придется в Выражении из фрагментов данных двух ячеек формировать аргумент для Дата()

Смотрите в СП "Общее описание..." - "Встроенные функции", там все есть.

kuman Подменю пользователя
сообщение 26.11.13, 21:28
Сообщение #10

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Zaval @ 26.11.13, 21:07) *
Не знаю smile.gif Главное - чтобы ТС знал и понимал, во что ввязывается...


Не вижу, уверены, что на этом форуме? smile.gif

На той платформе, где более "не силен", нужно свести всякие манипуляции к минимуму.

Нпр, можно при выгрузке из 7.7 сразу сформировать в одну ячейку ГГГГММДДччммсс, тогда в обработке
в строке Дата указать номер колонки, РежимЗагрузки - Вычислять, Выражение - что-то вроде
Дата(СокрЛП(ТекстЯчейки))

или
Значение = Дата(СокрЛП(ТекстЯчейки))

Точно не скажу - давно с этим не возился.

А так придется в Выражении из фрагментов данных двух ячеек формировать аргумент для Дата()

Смотрите в СП "Общее описание..." - "Встроенные функции", там все есть.


Мне категорична дата, а время можно задать во всех документах 12-00-00, скажем.
А в обработке нет строки дата, в которую можно подставить вычислять выражение.
[необходимо зарегистрироваться для просмотра ссылки]

Ardi Подменю пользователя
сообщение 26.11.13, 22:01
Сообщение #11

Живет на форуме
***********
Гений телепатии и социального моделирования
Группа: Пользователи
Сообщений: 4121
Из: Киев
Спасибо сказали: 957 раз
Рейтинг: 0

Написать
Сообщить(ТекстыЯчеек[2])

Сообщить(ТекстыЯчеек)

Сообщить(ТипЗнч(ТекстыЯчеек))


Сообщение отредактировал Ardi - 26.11.13, 22:02


Signature
Услуги 1С программиста 8.2, 7.7 (Плохо, дорого, очередь). Киев.

Zaval Подменю пользователя
сообщение 26.11.13, 22:13
Сообщение #12

Крутой
Иконка группы
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0

Ппц.. Это "типовая обработка "Загрузка данных из табличного документа""??? sad.gif



Проверьте тип значения в ячейке.
Запустите Предприятие из Конфигуратора в режиме Отладки.
При остановке по ошибке из окна сообщения перейдите в Конфигуратор, поставьте на нужной строке точку останова - проверяйте типы значений.

Ardi Подменю пользователя
сообщение 26.11.13, 22:18
Сообщение #13

Живет на форуме
***********
Гений телепатии и социального моделирования
Группа: Пользователи
Сообщений: 4121
Из: Киев
Спасибо сказали: 957 раз
Рейтинг: 0

На инфостарте написано "- файлы настроек для загрузки документов конфигурации "Бухгалтерия предприятия, редакция 1.6": ПоступлениеТоваровИУслуг.mxlz и РеализацияТоваровИУслуг.mxlz"
Поэтому требуется сама обработка и эти файлы.


Signature
Услуги 1С программиста 8.2, 7.7 (Плохо, дорого, очередь). Киев.

kuman Подменю пользователя
сообщение 26.11.13, 22:21
Сообщение #14

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Ardi @ 26.11.13, 22:01) *
Написать
Сообщить(ТекстыЯчеек[2])

Сообщить(ТекстыЯчеек)

Сообщить(ТипЗнч(ТекстыЯчеек))


на первую команду
-если формат ячейки 20090113185138, то пишет 20090113185138
-если формат ячейки 08.05.08, то 08.05.08.
А на остальные команды пишет массив.
Я так понимаю, надо число в виде 08.05.08 разобрать на понятное команды 1С типа год-месяц-число?
Типа такого (гугл)
ДатаДок_1 = СОКРЛП(ТекстыЯчеек[1]);
Год = Число(Сред(ДатаДок_1, 7, 4));
Месяц = Число(Сред(ДатаДок_1, 4, 2));
День = Число(Сред(ДатаДок_1, 1, 2));
ДатаДок = Дата(Год, Месяц, День);
Только я не знаю, что тут означают команды, поэтому править и не могу.

Zaval Подменю пользователя
сообщение 26.11.13, 22:43
Сообщение #15

Крутой
Иконка группы
Группа: Местный
Сообщений: 1994
Из: Киева и окрестностей
Спасибо сказали: 406 раз
Рейтинг: 0

Тогда уж как-то так
ДатаДок_1 = СОКРЛП(ТекстыЯчеек[2]);
Год = 2000 + Число(Сред(ДатаДок_1, 7, 2));
Месяц = Число(Сред(ДатаДок_1, 4, 2));
День = Число(Лев(ДатаДок_1, 2));
ДатаДок = Дата(Год, Месяц, День);

или так
ДатаДок_1 = СОКРЛП(ТекстыЯчеек[2]);
Год = 2000 + Число(Сред(ДатаДок_1, 7, 2));
Месяц = Число(Сред(ДатаДок_1, 4, 2));
День = Число(Лев(ДатаДок_1, 2));

Время = СОКРЛП(ТекстыЯчеек[3]);
Часы = Число(Лев(Время, 2));
Минуты = Число(Сред(Время, 4, 2));
Секунды = Число(Сред(Время, 7, 2));

ДатаДок = Дата(Год, Месяц, День, Часы, Минуты, Секунды);



"Что означают команды" - смотрите в СП.

Сообщение отредактировал Zaval - 26.11.13, 22:57

kuman Подменю пользователя
сообщение 27.11.13, 8:57
Сообщение #16

Общительный
**
Группа: Пользователи
Сообщений: 10
Спасибо сказали: 0 раз
Рейтинг: 0

Цитата(Zaval @ 26.11.13, 22:43) *
Тогда уж как-то так
ДатаДок_1 = СОКРЛП(ТекстыЯчеек[2]);
Год = 2000 + Число(Сред(ДатаДок_1, 7, 2));
Месяц = Число(Сред(ДатаДок_1, 4, 2));
День = Число(Лев(ДатаДок_1, 2));
ДатаДок = Дата(Год, Месяц, День);

или так
ДатаДок_1 = СОКРЛП(ТекстыЯчеек[2]);
Год = 2000 + Число(Сред(ДатаДок_1, 7, 2));
Месяц = Число(Сред(ДатаДок_1, 4, 2));
День = Число(Лев(ДатаДок_1, 2));

Время = СОКРЛП(ТекстыЯчеек[3]);
Часы = Число(Лев(Время, 2));
Минуты = Число(Сред(Время, 4, 2));
Секунды = Число(Сред(Время, 7, 2));

ДатаДок = Дата(Год, Месяц, День, Часы, Минуты, Секунды);



"Что означают команды" - смотрите в СП.


Спасибо!
Да, это оно - команды разбирают мой формат времени по полочкам.
Но при присвоении даты документа выдает ошибку.
Не понимает формат типа

ДатаДок = Дата(Год, Месяц, День, Часы, Минуты, Секунды)

Может дело в формате даты
Типа
[необходимо зарегистрироваться для просмотра ссылки]


А нет, дата документа формируется, только вопрос, при исполнении какого события ее вставлять.
Обработка ругается
Создан новый документ
Добавлена строка: 1
Ошибка при вызове метода контекста (Записать): Не задана дата документа
Объект не записан: ДокументТабличнаяЧастьСтрока.ПрочиеЗатраты.Затраты.

Пишу сообщить ДатаДок - выдает все верно-
Создан новый документ
04.03.2008 12:00:10
Добавлена строка: 1
04.03.2008 12:00:10
Добавлена строка: 2
---------------------------------------------
Получение элемента по индексу для значения не определено
Объект не записан: ДокументТабличнаяЧастьСтрока.ПрочиеЗатраты.Затраты

Но почему не хочет создавать документ.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 25.04.24, 16:11
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!