Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с логикой / 3 сообщений из 3, страница 1 из 1
30.08.2004, 15:14
    #32671475
Grumax_user
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с логикой
Есть таблица импортированная из TXT файла...(лучше не импортируется)...передо мной встала проблемма привести данную таблицу в порядок.
Таблица OKOF.dbf выглядит примерно так:
Kod C(12) Namek C(60)
10 0000000 ¦ МАТЕРИАЛЬНЫЕ ФОНДЫ
¦
11 0000000 ¦ ЗДАНИЯ (КРОМЕ ЖИЛЫХ)
¦
11 0001000 ¦ Здания, кроме жилых, не включенные в другие
¦ группировки
¦
11 0001010 ¦ Здания производственного назначения, не
¦ включенные в другие группировки
¦
11 0001150 ¦ Здания производственных насосных и
¦ компрессорных станций, трансформаторных
¦ подстанций
¦
11 0001160 ¦ Здания производственных проходных
См. файл, если прикрепился ;-)
А надо так:
Kod C(12) Namek C(250) или Мемо
10 0000000 МАТЕРИАЛЬНЫЕ ФОНДЫ
11 0000000 ЗДАНИЯ (КРОМЕ ЖИЛЫХ)
11 0001000 Здания, кроме жилых, не включенные в другие группировки
11 0001010 Здания производственного назначения, не включенные в другие группировки
11 0001150 Здания производственных насосных и компрессорных станций, трансформаторных подстанций
11 0001160 Здания производственных проходных
ТХТ файл не исправить 300 стр. текста...организован в виде таблицы, но одному коду соответствует несколько строк
Задачка пустяковая, но слегка туплю...понедельник ;-))...по логике запоминаем kod и namek...далее skip...проверяем если SUBSTR(okof.kod,1,1) # '1' или '2' и не пустая namek, то прибавляем ее к предыдущей создавая строку...как только опадаем на строку, где okof.kod='1...' то заканчиваем складывать и делаем append в новую таблицу....по логике вроде все правильно, но кривые руки не поддаються логике....может мне поспать пойти? :-))) хелп плиззз

Я во все дела суюсь -> всесторонне разовьюсь
...
Рейтинг: 0 / 0
30.08.2004, 15:26
    #32671516
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с логикой
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
CREATE TABLE Result (Kod C( 12 ), Namek M)
select OKOF
SCAN
	IF ALLTRIM(kod)='|'
		* Продолжение предыдущей записи
		select Result
		REPLACE Namek WITH Chr( 13 )+chr( 10 )+AllTrim(okof.Namek) ADDITIVE
	ELSE
		* Новая запись
		INSERT INTO Result (kod, Namek) ;
			VALUES (ChrTran(okof.kod,"|"," "),ALLTRIM(okof.Namek))
	ENDIF
ENDSCAN
...
Рейтинг: 0 / 0
30.08.2004, 16:01
    #32671598
Grumax_user
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с логикой
2 ВладимирМ

Извините что заставляю снова грузить эту страничку.
Я просто хочу сказать: "Спасибо!"
:-))

Я во все дела суюсь -> всесторонне разовьюсь
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Помогите с логикой / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]