Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / обновление таблицы / 5 сообщений из 5, страница 1 из 1
22.10.2012, 16:03
    #38008359
Дима1991
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновление таблицы
помогите мне обновить таблицу пожалуйста в соответствии со следующими условиями:

вот мой код для создания таблицы из xml файла:

авторcfolder=god+mes
cfile = PathToShtrafs + cfolder + "\T05M50" + SUBSTR(cfolder, 3, 4) + "050130.xml"

cMessageTitle = 'Формирование отчетов'
cMessageText = 'Файл ' + cfile +' уже существует. Перезаписать?'
nDialogType = 4 + 32 + 256

IF FILE(cfile)
IF MESSAGEBOX(cMessageText, nDialogType, cMessageTitle)=6
CREATE cursor tmp ( ;
id I, ;
id_sch I, ;
vpolis I, ;
spolis C(3), ;
npolis C(16), ;
fam C(30), ;
im C(30), ;
ot C(30), ;
dr t, ;
w I,;
smo C(5), ;
smo_db_payment C(8),;
smo_in_foms C(8),;
stat I, ;
name_error C(50), ;
kol_strax I, ;
kol_uslugi N(5,2), ;
kol_kd N(5,2), ;
sumv N(10, 2), ;
code_mo C(6), ;
name_mo C(50), ;
smo_tmp C(5))

XMLTOCURSOR(cfile, "tmp", 512+8192)
COPY TO (forceext(cfile,'dbf'))
thisform.optiongroup1.Enabled= .T.
ELSE
MESSAGEBOX=7
thisform.optiongroup1.Enabled= .T.
ENDIF
ELSE
MESSAGEBOX('Не создана таблица на основе xml-файла - '+cfile +' или возможно файл не существует' )
ENDIF



нужно обновить эту создаваемую таблицу по таким условиям:

1. если поле name_error=Отсутствует в СРЗ, то
smo_db_payment=smo
smo_in_foms=пустым оставить

2. если поле name_error=СМО в файле - "Совита", СМО в СРЗ - "МАКС-М, то
smo_db_payment='Совита'
smo_in_foms='МАКС-М'

3. если поле name_error содержит что-то другое, то
smo_db_payment=smo
smo_in_foms=smo


я просто пишу но там ошибка появилась что поле smo_db_payment не найдено.
писал так после строки COPY TO (forceext(cfile,'dbf')) в выше описанном коде, но выдала ошибку smo_db_payment не найдено
SELECT (forceext(cfile,'dbf'))
UPDATE (forceext(cfile,'dbf')) SET smo_db_payment=smo,smo_in_foms='' WHERE name_error='Отсутствует в СРЗ'
...
Рейтинг: 0 / 0
22.10.2012, 16:11
    #38008379
Дима1991
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновление таблицы
все разобрался. извиняюсь)
...
Рейтинг: 0 / 0
22.10.2012, 16:23
    #38008405
Дима1991
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновление таблицы
одна проблемка у меня. я пишу так для обновления таблицы, но не знаю как сделать так чтобы обновлялась таблица если ни одно из указанных условий не встречается

авторSELECT (forceext(cfile,'dbf'))
UPDATE (forceext(cfile,'dbf')) SET smo_db_opl=smo,smo_in_fom='' WHERE name_error='Отсутствует в СРЗ'
UPDATE (forceext(cfile,'dbf')) SET smo_db_opl='Совита',smo_in_fom='Макс' WHERE name_error='СМО в файле - "Совита", СМО в СРЗ - "МАКС-М'
UPDATE (forceext(cfile,'dbf')) SET smo_db_opl=smo,smo_in_fom='' WHERE name_error='СМО в файле - "МАКС-М", СМО в СРЗ - "Совита'


надо еще сделать чтобы если поле name_error НЕ РАВНО Отсутствует в СРЗ или СМО в файле - "Совита", СМО в СРЗ - "МАКС-М" или СМО в файле - "МАКС-М", СМО в СРЗ - "Совита" , то было так:
smo_db_opl=smo
smo_in_fom=smo
...
Рейтинг: 0 / 0
22.10.2012, 19:04
    #38008727
Дима1991
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновление таблицы
никто не знает?
...
Рейтинг: 0 / 0
22.10.2012, 19:17
    #38008741
Дима1991
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
обновление таблицы
блин :) элементарно все.. разобрался сам
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / обновление таблицы / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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