|
Разложить строку в структуру | ☑ | ||
---|---|---|---|---|
0
Ayvengo
20.11.13
✎
18:37
|
Собственно строка
INSERT INTO class_mkb (id, name, code, parent_id, parent_code, node_count, additional_info) VALUES(5, 'Холера, вызванная холерным вибрионом 01, биовар eltor', 'A00.1', 3, 'A00', 0, 'Холера Эль-Тор');
Как бы из этой строки сделать Структура("id, name, code, parent_id, parent_code, node_count, additional_info") Вариант СтрЗаменить не предлагать, т.к. разделитель ", " существует в поле текста, например 'Холера, вызванная холерным вибрионом 01, биовар eltor' - это одно поле "name" Поехали :) |
|||
1
Господин ПЖ
20.11.13
✎
18:49
|
резать по "', " и ", "
|
|||
2
Serginio1
20.11.13
✎
18:55
|
||||
3
Serginio1
20.11.13
✎
18:57
|
Или переписанный вариант
v8: Преобразование csv в таблицу значений, продолжение |
|||
4
Ярус
20.11.13
✎
19:00
|
в типовой есть РазложитьСтрокуВМассивПодстрок , аналогичног сделай свое
|
|||
5
Ayvengo
20.11.13
✎
19:01
|
Никто не читает :)
|
|||
6
kosts
20.11.13
✎
19:02
|
(0) А в чем собственно проблема?
|
|||
7
Ayvengo
20.11.13
✎
19:03
|
(6) почитай внимательно, особенно
Вариант СтрЗаменить не предлагать, т.к. разделитель ", " существует в поле текста, например 'Холера, вызванная холерным вибрионом 01, биовар eltor' - это одно поле "name" |
|||
8
Classic
20.11.13
✎
19:03
|
(5)
Чем тебя (1) не устроило? |
|||
9
Ayvengo
20.11.13
✎
19:03
|
(8) как мне понять как резать? =\
|
|||
10
Ayvengo
20.11.13
✎
19:03
|
+(9) и где резать
|
|||
11
Ненавижу 1С
гуру
20.11.13
✎
19:05
|
первач часть id, name, code, parent_id, parent_code, node_count, additional_info вообще без вопросов
вторая: циклом по открывающемся и закрывающемся кавычкам |
|||
12
Ayvengo
20.11.13
✎
19:05
|
(11) пример в студию
|
|||
13
Ayvengo
20.11.13
✎
19:06
|
(11) не всегда есть кавычки =\
|
|||
14
Конфигуратор1с
20.11.13
✎
19:07
|
(0) Находишь первую скобку "(", находишь вторую ")" и все что между ними стрзаменить)
|
|||
15
Ярус
20.11.13
✎
19:09
|
(13) тогда никак, только руками, все что можно обрабатываешь программно(считаешь запятые, считаешь ковычки), все что выбивается из нормального формата делаешь руками
|
|||
16
Ayvengo
20.11.13
✎
19:10
|
(15) неправильный ответ :) уверен, что способ есть
|
|||
17
Конфигуратор1с
20.11.13
✎
19:10
|
(16) чем (14) не подходит?
|
|||
18
Classic
20.11.13
✎
19:10
|
(10)
ВКавычках = Ложь; НомерЗначения = 1; СтрокаЗначения = ""; Для Сч = 1 По СтрДлина(НашаСтрока) Цикл Если Сред(НашаСтрока,Сч,1) = "'" Тогда ВКавычках = НЕ ВКавычках; КонецЕсли; Если НЕ ВКавычках И Сред(НашаСтрока, Сч, 1) = "," Тогда // делаем какуюто операцию с СтрокаЗначение СтрокаЗначение = ""; НомерЗначения = НомерЗначения + 1; Иначе СтрокаЗначение = СтрокаЗначение + Сред(нашаСтрока, Сч,1); КонецЕсли; КонецЦикла; |
|||
19
Classic
20.11.13
✎
19:11
|
(18)
Заменить // делаем какуюто операцию с СтрокаЗначение на то, что тебе надо. В этот момент в СтрокаЗначение будет символьное представление значения поля с номером НомерЗначения |
|||
20
Classic
20.11.13
✎
19:12
|
Ну и вконце тоже отработать то, что осталось
|
|||
21
Ayvengo
20.11.13
✎
19:15
|
(20) небольшие ошибочки в коде, но спасибо :) Хороший вариант!
|
|||
22
Classic
20.11.13
✎
19:15
|
(21)
ну я собственно его не отлаживал :) |
|||
23
Ayvengo
20.11.13
✎
19:17
|
Но я веселее придумал ))) Загрузил в SQL и экспортнул в CSV :D В шикарно работает ;)
|
|||
24
Classic
20.11.13
✎
19:23
|
(23)
Читер |
|||
25
zakidonoff
20.11.13
✎
19:29
|
(23) Вот и не начинай после такого в следующий раз выяснять у ТС что он делает, зачем делает, откуда делает...
Мог бы сразу задачу описать, мол, нужно дбф файл данных в 1С получить разложенный по реквизитам. Мол, операция разовая. |
|||
26
Ayvengo
20.11.13
✎
19:39
|
(25) да нет, все не так, пока мы размышляли я ставил SQL сервер и пробовал загрузить туда данные из файла с разрешением SQL. Но чет не нравился мне метод разбивания строки из файла для загрузки данных в SQL.
|
|||
27
zakidonoff
20.11.13
✎
19:43
|
(26) Вот сие и мог бы сразу в (0) указать -)
|
|||
28
Ayvengo
20.11.13
✎
19:47
|
(27) так идеи то не было такой, когда писал пост :)
|
|||
29
Serginio1
21.11.13
✎
10:39
|
(23) Зачем SQL для этого есть ADO для текстов
v8: Чем загрузить "сложный" CSV ? http://it-proposition.blogspot.ru/2011/08/schemaini-microsoftaceoledb120.html |
|||
30
НЕА123
21.11.13
✎
10:49
|
Новый Структура(""""+СтрПолучитьСтроку(СтрЗаменить(СтрЗаменить(СтрЗаменить(СобственноСтрока,Символы.ПС,""),"(", Символы.ПС),")",Символы.ПС),2)+"""")
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |