[ОТВЕТИТЬ]
Опции темы
27.11.2006 04:25  
BR
В общем есть необходимость изменить тип операции документа "расходная накладная", сейчас стоит "передача товара" необходимо поставить "продажа", как это сделать? Документов порядка 5000 штук *01 кто , что подскажет?
 
27.11.2006 09:14  
OlegON
Скриптом теретически можно, но опасно, там и на налоги завязка будет... Я так понимаю, доки уже проведенные и дергать их в черновик нехорошо будет? Цель действа? По идее - дернуть их в черновик, переставить OPCODE в SMDOCUMENTS и дернуть обратно... А что с рассылкой? Где они еще лежат? Там их грохнуть сначала надо. И везде, где это будет - пересчитать аналитику. Вот, что первое в голову приходит. Бэкапы там и прочее само собой... И обязательно ДО операций убедиться, что все констрейнты и триггеры включены, а структура базы соответствует эталону.
 
27.11.2006 09:20  
BR
Цитата:
Сообщение от olegon
...переставить OPCODE в SMDOCUMENTS и дернуть обратно...
каким образом это проделать??? я с Ораклом никак абсолютно.
Доки лежат в одной БД и никуда не пересылались, аналитику само собой пересчитаю.
 
27.11.2006 09:33  
OlegON
Какой признак для выделения этих расходов среди других?
 
27.11.2006 09:37  
BR
Все расходки сделаны с 3-х определенных МХ (складов).
МХ имеют одно начало названий "ЦС ("
 
27.11.2006 09:38  
inna
Дернуть обратно - видимо поменять опять статус на зеленый. Так, olegon? Есть таблица SMDOCUMENTS. В ней поле OPCODE - код операции (если операции простые - не пользовательские).
UPDATE SMDOCUMENTS SET OPCODE=1 WHERE OPCODE=10
если надо поменять все такие накладные
 
27.11.2006 09:46  
inna
тогда так?
UPDATE SMDOCUMENTS SET OPCODE=1 WHERE OPCODE=10 and locationfrom in (select id from SMSTORELOCATIONS where substr(name,1,4)='ЦС (')
 
27.11.2006 10:22  
OlegON
Да, дернуть обратно - в "Принят полностью". Раз человек нулевой в Оракле, то еще commit; сделать не забыть. А в целом - тогда и браться бы не надо.
 
27.11.2006 10:30  
BR
1. обязательный архив БД
2. SELECT * FROM SMDOCUMENTS WHERE OPCODE=10 and locationfrom in (select id from SMSTORELOCATIONS where substr(name,1,4)='ЦС (')
3. Если все нормально ОК делаю UPDATE/COMMIT

Правильно или нет?

PS. olegon надо ведь когда то позновать неизвестное *07
 
27.11.2006 10:38  
OlegON
1. обязательный архив БД
2.
Код:
SELECT * FROM SMDOCUMENTS WHERE OPCODE=10 and locationfrom in (select id from SMSTORELOCATIONS where substr(name,1,4)='ЦС (');
3.
Код:
UPDATE SMDOCUMENTS SET OPCODE=1 WHERE OPCODE=10 and locationfrom in (select id from SMSTORELOCATIONS where substr(name,1,4)='ЦС (');
commit;
Дело не в познании, а напортачить можешь. Познают на тестовых базах.
 
 
Опции темы



Часовой пояс GMT +3, время: 17:17.

Все в прочитанное - Календарь - RSS - - Карта - Вверх 👫 Яндекс.Метрика
Форум сделан на основе vBulletin®
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.