Товары вне группы

Программирование на Атлантисе (VIP, FCOM, ARD), FastReport

Модераторы: m0p3e, edward_K, Модераторы

evgem
Постоянный гость
Сообщения: 69
Зарегистрирован: 16 фев 2006, 18:48

Товары вне группы

Сообщение evgem »

Неожиданно стал выдаваться в отчётах по складу некий предмет, не имеющий инвентарного номера и выдаваемый как Товары вне групп, с отрицательным количеством! Как найти его и как избавиться от минуса?
Petr0vi4
Новичок
Сообщения: 26
Зарегистрирован: 30 май 2006, 19:41
Откуда: Киев
Контактная информация:

Сообщение Petr0vi4 »

Попробуйте select * from KatMC where KatMc.name="тут имя МЦ(если Вы его знаете)";
А на счет "-" это надо смотреть по документах все приходы/расходы может блондинка какаято что-то натворила! Проще всего этот вопрос решается звонком на тот склад где минус! Они натворили пусть и решают! :)
evgem
Постоянный гость
Сообщения: 69
Зарегистрирован: 16 фев 2006, 18:48

Сообщение evgem »

Наименования нет. Похоже, что это бывший предмет, который имел отрицательно количество и его удалили, а вместо него создали под другим именем. А у того нет ни имени ни инвентарного номера. Как его найти и удалить?
Petr0vi4
Новичок
Сообщения: 26
Зарегистрирован: 30 май 2006, 19:41
Откуда: Киев
Контактная информация:

Сообщение Petr0vi4 »

select nrec from KatMc where (('' ''==katmc.name and '' ''==katmc.barcod))... и т.д.
Попробуй найти все товары у которых нет имени, номера... но посмотри точно как в БД поля называются и запрос должен быть с учетом индексов!
А потом delete KatMC where nreс = то что нашло;
evgem
Постоянный гость
Сообщения: 69
Зарегистрирован: 16 фев 2006, 18:48

Сообщение evgem »

Не находит ничего. А как использовать индексы?
evgem
Постоянный гость
Сообщения: 69
Зарегистрирован: 16 фев 2006, 18:48

Сообщение evgem »

Похоже я нашёл запись(в TEKSALDO) и удалил её, но отчёты всё равно показывют её, правда, теперь без названия вне товарной группы! Может где ещё удалить?
Petr0vi4
Новичок
Сообщения: 26
Зарегистрирован: 30 май 2006, 19:41
Откуда: Киев
Контактная информация:

Сообщение Petr0vi4 »

Ей так просто удалять записи с TEKSALDO не советую-там данные по остаткам МЦ! и это может повлечь последствия!!! :o потом складские проводки с бухгалтерскими могут не сойтись!
evgem
Постоянный гость
Сообщения: 69
Зарегистрирован: 16 фев 2006, 18:48

Сообщение evgem »

Так я удалил в тестовой базе, а в главной она есть,правда, по другому адресу. Так что ещё сделать?
Sheinina
Местный житель
Сообщения: 366
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Сообщение Sheinina »

Для начала запустить проверку КОУ!!!
А потом думать:)
Max_Fin
На пенсии
Сообщения: 797
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г. Тюмень
Контактная информация:

Сообщение Max_Fin »

1) проверка - это правильная идея
2) дык у вас запись в KatMC существует?
3) TekMC можете хоть все грохать. Необходимо править SaldoMC и(или) SpOrder. Если SpOrder нормальный (хотя врядли так как МЦ была удалена), то достаточно пересчитать сальдовые остатки.

как я понял задачу - есть некие записи в SaldoMC и SpOrder, которые ссылаются на несуществующую МЦ
могу предложить запросы, однако, работать они будут очень медлено, лучше написать на VIP'е отбор таких данных.

Код: Выделить всё

select SaldoMC.nRec
where
((
  Word(0) == SaldoMC.SP and
  SaldoMC.cMC == KatMC.nRec
))
and
(
  SaldoMC.cMC <> Comp(0) and
  not IsValidAll(tnKatMC)
);

select SpOrder.nRec
where
((
  Word(0) == SpOrder.SP and
  SpOrder.cMC == KatMC.nRec
))
and
(
  SpOrder.cMC <> Comp(0) and
  not IsValidAll(tnKatMC)
);
но запускать не советую (лучше на VIP'е написать тем же посути условием в цикле отсечь не нужные записи), хотя бы предварительно наложить нужно ограничения на дату для SaldoMC и SpOrder.
Жду выхода Вселенная 2.12!
Sheinina
Местный житель
Сообщения: 366
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Сообщение Sheinina »

Если я правильно поняла изначальный вопрос, то есть информация о разрезе, тогда можно в запрос закинуть еще SklOrder (в нем есть нужные индексы)
Примерно так:

Код: Выделить всё

select SpOrder.nrec where ((
    word(0) == sklorder.sp
and nrec_podr == sklorder.cpodr
and nrec_mol  == sklorder.cmol
and sklorder.nrec == sporder.csklorder
and sklorder.cmc == katmc.nrec
))
and (
    sporder.cmc <> comp(0) 
and not IsValidAll(tmKatMC)
);
а nrec_podr и nrec_mol можно вытащить из соответствующих каталогов по названиям ручками
evgem
Постоянный гость
Сообщения: 69
Зарегистрирован: 16 фев 2006, 18:48

Сообщение evgem »

После проведения КОУ в складском учёте, в КАТМС появилась запись с наименованием ??? N 4612004395717936361, у которой количество -10. Если я её удалю средствами Галактики, этого будет достаточно или нужно сразу удалять её NREC?
Max_Fin
На пенсии
Сообщения: 797
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г. Тюмень
Контактная информация:

Сообщение Max_Fin »

Sheinina писал(а):

Код: Выделить всё

and sklorder.cmc == katmc.nrec
конечно же

Код: Выделить всё

and sklorder.nRec == SpOrder.cSklOrder
and SpOrder.cMC == katmc.nrec
:smile:
Жду выхода Вселенная 2.12!
Sheinina
Местный житель
Сообщения: 366
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва

Сообщение Sheinina »

to Max_Fin:
Извиняйте, дядьку, ачепяталась. :oops:

to evqem:
Средствами галактики удалить не получится - раз есть остаток (пусть кривой), значит есть ссылки... Ссылки искать и чистить - ох, я вам не завидую...
Я бы ничего искать не стала, а разобралась бы с бухгалтерией, что делать с денежкой, которая на этой МЦ висит и сделала бы приходный ордер на нее в нужный разрез, чтобы обнулить остатки, а потом перевела бы ее в архивные (есть такая функция в локальном меню в просмотре каталога МЦ).
Да, для начала для удобства работы переименовала бы ее :D
evgem
Постоянный гость
Сообщения: 69
Зарегистрирован: 16 фев 2006, 18:48

Сообщение evgem »

А нельзя огласить весь список таблиц, которые придётся чистить, если всё-таки это придётся делать?
Ответить