Клинит. Налейте смазки стаканчик.....

Форум 1С: Одинэс.Ру

Найти!

Клинит. Налейте смазки стаканчик.....

pit
28.07.2009 - 02:29
Напомните, плиз, как строку вида
 
"10";"FOR";"00000013";"DEAD MECHANICAL PARTS";"FO851";0,02;"XG";1090414
 
затолкать через значениев строку в СписокЗначений или таблицу значений...
 
или придется извращаться с глРаздолбать(....) ?
К списку тем 1 > К списку форумов
Google Adsense

Re: Клинит. Налейте смазки стаканчик.....

который не честный
1 - 28.07.2009 - 02:56
ИзСтрокиСРазделителями(<?>)
Синтаксис:
ИзСтрокиСРазделителями(<Строка>)
Назначение:
Заполняет СписокЗначений значениями из переданной в качестве параметра строки, содержащей разделенные запятыми значения: числа и строки в двойных кавычках.

Re: Клинит. Налейте смазки стаканчик.....

pit
2 - 28.07.2009 - 03:05
Семен Семеныч.... шары же мыть надо по утрам.... (пошел к рукомойнику)

Re: Клинит. Налейте смазки стаканчик.....

Исчо
3 - 28.07.2009 - 03:57
(1)Не прокатит, там нет запятых

Re: Клинит. Налейте смазки стаканчик.....

chief accountant
4 - 28.07.2009 - 04:21
(3) Кто запрещает замену сделать

Re: Клинит. Налейте смазки стаканчик.....

Исчо
5 - 28.07.2009 - 04:44
(4)А те запятые, которые тама в числах, на что менять будем?

Re: Клинит. Налейте смазки стаканчик.....

chief accountant
6 - 28.07.2009 - 04:54
5-Исчо >Никто и не утверждает, что это раз прокатит, но строку отформатировать под ИзСтрокиСРазделителями - возможно

Re: Клинит. Налейте смазки стаканчик.....

Исчо
7 - 28.07.2009 - 05:08
Я бы лучше оставил строку как есть и не заталкивал её в список значений или в таблицу значений. Тогда бы и форматировать её под ИзСтрокиСРазделителями не нужно было.

Re: Клинит. Налейте смазки стаканчик.....

который не честный
8 - 28.07.2009 - 05:10
В данном случае меняем запятые на точки, точки с запятой на запятые.. В другом случае, если запятые будут в тексте то они попадут под действия ковычек, и замену для чисел надо будет сделать типа так, сначала заменить 0, на 0., потом 1, на 1. и так 10 раз.

Re: Клинит. Налейте смазки стаканчик.....

chief accountant
9 - 28.07.2009 - 05:11
7-Исчо >Учитывая объем кода по замене и добавлению нужных символов лучше конечно сразу брать данные из строки

Re: Клинит. Налейте смазки стаканчик.....

который не честный
10 - 28.07.2009 - 05:19
9 - объём кода - 4 строки...
Для К=0 По 9 Цикл
Стр=СтрЗаменить(Стр,Строка(К)+",",Строка(К)+".");
КОнецЦИкла;
Стр=СтрЗаменить(Стр,";",",");

Re: Клинит. Налейте смазки стаканчик.....

который не честный
11 - 28.07.2009 - 05:22
а можно еще проще сделать - убрать все кавычки и заменить ; на "","", всё станет текстом.

Re: Клинит. Налейте смазки стаканчик.....

USSR
12 - 28.07.2009 - 05:47
оно и самому в список запихать надо 3 строчки кода

Re: Клинит. Налейте смазки стаканчик.....

pit
13 - 28.07.2009 - 06:05
шутники собрались... с прибауточками...
У меня прайс в текстухе, размером на 130 мегабайт... И сколько я лопатить буду эту байду?
 
P.S. строчек - 748937 штукоф....

Re: Клинит. Налейте смазки стаканчик.....

Тихий
14 - 28.07.2009 - 06:34
дятлам на смех, чес слово

Re: Клинит. Налейте смазки стаканчик.....

pit
15 - 28.07.2009 - 06:36
причем таких прайсов 11 штукофф... есть поболее, есть поменее....
 

14-Тихий > а я голову ловаю, думаю, чего ты смеешься...

Re: Клинит. Налейте смазки стаканчик.....

2Green
16 - 28.07.2009 - 06:39
(13) это где ты такое чудо нарыл? чего в дбф не сохранили?

Re: Клинит. Налейте смазки стаканчик.....

USSR
17 - 28.07.2009 - 06:50
(15)Ты прямо как студент, все утро голову ломаешь, уж давно бы ппробовал, думаю, что все летать будет. Можно и вообще в список не пихать, нафиг он нужен, если у тебя формат файла фикисрованный, сразу разбираешь по поялм и делов.
(16)нормальный файл

Re: Клинит. Налейте смазки стаканчик.....

Uho
18 - 28.07.2009 - 07:09
извращенцы...
(0) расширение поменяй на CSV

Re: Клинит. Налейте смазки стаканчик.....

buh
19 - 28.07.2009 - 07:12
Кстати такой текст прекрасно разбирается Екселем, если это одноразовая работа.
Из екселя скопировать в mxl и оттуда загрузить

Re: Клинит. Налейте смазки стаканчик.....

Uho
20 - 28.07.2009 - 07:13
19-buh > см. (18)

Re: Клинит. Налейте смазки стаканчик.....

который не честный
21 - 28.07.2009 - 07:24
Еще забыли про запрос через АДО.. Думаю, быстрее его ничего не будет. 1С с такими текстовыми файлами работает оооочень долго..

Re: Клинит. Налейте смазки стаканчик.....

pit
22 - 28.07.2009 - 07:35
(21) полторы минуты.... надо просто буферизацию включать ... и потолще...
(18) это и есть CSV файло, но поддержки на машине точно не будет - так что мимо.
(19) работа не разовая - юзеры сами прайсы обновлять будут...
 
P.S. посчитал - там всего то 6 половиной миллионов наименований товаров....

Re: Клинит. Налейте смазки стаканчик.....

Buhta
23 - 28.07.2009 - 07:37
Проще наверно по типу глРаздолбать все-таки... у мну такие объемы из Екселя и ДБФ не хотели грузиться и долго, а из текста вмомент засасывает

Re: Клинит. Налейте смазки стаканчик.....

VZ
24 - 28.07.2009 - 07:48
Не только стрим... v7plus обрабатывает текстовухи и побыстрее базового объекта "Текст", и размер пофигу - читает файл построчно.
Но я предпочитаю в таких случаях стрим: если можно не использовать v7plus, то лучше не использовать ;)
 
23-Buhta > ДБФ внутри текстовый файл ;) Фиксированная строка и фиксированные размеры полей помогают быстро отыскать нужную запись в случае произвольного доступа, но в случае последовательного чтения записей это преимущество сходит на "нет" :)

Re: Клинит. Налейте смазки стаканчик.....

buh
25 - 28.07.2009 - 09:46
Яндекс выдал:
http://www.infostart.ru/profile/2562/projects/1341/
что это, я не знаю :)
К списку тем 1 > К списку форумов
Тема закрыта и находится в архиве.
Но Вы можете начать новую тему.
© 2009 Форум 1С: Одинэс.Ру
В основу сайта был положен архив форума «Территория 1С»