Страница 1 из 2

документы и проводки

Добавлено: 01 июн 2005, 16:48
eremkin
Привет , всем.

Проблема заключается в следующем:

Нужно сравнивать данные бухгалтерского и оперативного учета. Как можно определить документы, у которых пока еще нет проводок. В обратном случае, если есть проводка документ найти не проблема, проблема правильно его интерпритировать ;)

Re: документы и проводки

Добавлено: 01 июн 2005, 17:08
Max_Fin
eremkin писал(а): Как можно определить документы, у которых пока еще нет проводок.
только путем перебора самих документов и последующей проверки на существование проводки.
eremkin писал(а): В обратном случае, если есть проводка документ найти не проблема, проблема правильно его интерпритировать ;)
интерпретировать можно по полю в проводке TIDKGAL,
все известные типы документов можно найти в таблице KatDoc.
(проблема только будет в упорстве и знаниях)

связка между проводками и документами такая
TiDkGal - определяет документ
cSoprDoc - ссылка на nRec документа

Добавлено: 01 июн 2005, 17:37
Seybukan
Лучше сначала проанализировать вообще формирование проводок на факт ручных и корректированных.
Однажды занимался этим. Сделали отчетик в ексель, потом я там наделал сводных таблиц с диаграммами и пришел в ужас. :))) На фиг вообще автоматизируют с таким количеством ручных проводок.

Вот после анализа бороться с ручными проводками! А потом уж приступать к анализу проводок с документами. Но в любом случае для каждого типа документа обрабатывать придется по разному. Так как скажем в накладной нужно обрабатывать проводки по налогам и расчетам контрами отдельно. Да и дата проводок по накладной может быть по дате либо накладной, либо списания. И все такое.

Хотя при корректной классификации документов и наличии только автоматических проводок такая сверка потеряет актуальность.

Добавлено: 01 июн 2005, 18:45
ecasoft
Мы пишем для клиентов фильтры в режиме проведения проводок. Фильтры оставляют на экране только не документы, по которым суммы в проводке и документе не сходятся. к сожалению, фильтры не универсальны и под каждого пишутся свои.

Re: документы и проводки

Добавлено: 02 июн 2005, 08:45
eremkin
Max_Fin писал(а):
eremkin писал(а): Как можно определить документы, у которых пока еще нет проводок.
только путем перебора самих документов и последующей проверки на существование проводки.
Если не сложно объясните как провести проверку на существование проводки?

Добавлено: 02 июн 2005, 11:02
stray
попробуй так, сделай выборку:
select * from basefin where ((comp(0)<<basefin.csoprhoz));

Добавлено: 02 июн 2005, 11:09
eremkin
stray писал(а):попробуй так, сделай выборку:
select * from basefin where ((comp(0)<<basefin.csoprhoz));
В данном случае обрабатываются только финансовые документы, а что делать с документами из KATSOPR? К тому же проводки хрянятся в таблице OBOROT, а в SOPRHOZ хранится хозяйственная операция к сопроводительному документу.

Добавлено: 02 июн 2005, 11:15
stray
что-ниить типа:
select * from katsopr where (comp(0)<katsopr.chozoper);

Добавлено: 02 июн 2005, 11:28
stray
есть ссылка, хоз.операция настроена - должно появиться в oborot е,
а далелее как писал Max_Fin:
TiDkGal - определяет документ
cSoprDoc - ссылка на nRec документа
доставай - анализируй

Добавлено: 02 июн 2005, 11:40
Seybukan
У каждого оборота есть признак
OBOROT.RUCHAUTO
если признак "ручная"=0 и нет ссылкок
OBOROT.CSOPRDOC и OBOROT.CSOPRHOZ
тады проводка вообще без документа, если ссылки есть, то значит проводку добавили руками к документам.

Добавлено: 02 июн 2005, 15:25
Max_Fin

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

//накладные на отпуск МЦ
  _loop KatSopr where ((Word(101) == KatSopr.VidSopr and
                                    dDate1 <<= KatSopr.dSopr and
                                    dDate2 >>= KatSopr.dSopr))
  {
     if RecordExists Oborot
          where ((Word(101) == Oborot.TiDk and
                       KatSopr.nRec == Oborot.cSoprDoc)) <> tsOK
     {
       //значит нет таки проводок :-((
     }
  }
по поводу SoprHoz он может и отсутствовать при ручном формировании проводок.
пользовательские документы можно найти UsersDoc

Добавлено: 02 июн 2005, 15:31
eremkin
Max_Fin писал(а):

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

//накладные на отпуск МЦ
  _loop KatSopr where ((Word(101) == KatSopr.VidSopr and
                                    dDate1 <<= KatSopr.dSopr and
                                    dDate2 >>= KatSopr.dSopr))
  {
     if RecordExists Oborot
          where ((Word(101) == Oborot.TiDk and
                       KatSopr.nRec == Oborot.cSoprDoc)) <> tsOK
     {
       //значит нет таки проводок :-((
     }
  }
по поводу SoprHoz он может и отсутствовать при ручном формировании проводок.
пользовательские документы можно найти UsersDoc
интересная идея стоит попробовать

Добавлено: 02 июн 2005, 15:38
maikl
Не пойму,о чем вы пишите. Мы входим в разноску хозопераций и там можно выбрать документы без ТХО, без проводок.

Добавлено: 04 июн 2005, 14:49
Deinis
maikl писал(а):Не пойму,о чем вы пишите. Мы входим в разноску хозопераций и там можно выбрать документы без ТХО, без проводок.
Все пишут о своем. В общем пишут так, как поставлена задача. А поставлена она совершенно неконкретно. Пусть инициатор приведет конкретную задачу, а не то, что он оставил в первом постинге - совершенно общими фразами. Оттуда даже непонятно, как и для чего это нужно? Пользователю - тогда ваш варинат, если для себя - то чем он собирается проверять? Обычным LOT-ом или ваять собственный интерфейс (что вряд-ли, судя по уровню вопросов)?

Добавлено: 06 июн 2005, 11:22
eremkin
Deinis писал(а): Все пишут о своем. В общем пишут так, как поставлена задача. А поставлена она совершенно неконкретно. Пусть инициатор приведет конкретную задачу, а не то, что он оставил в первом постинге - совершенно общими фразами. Оттуда даже непонятно, как и для чего это нужно? Пользователю - тогда ваш варинат, если для себя - то чем он собирается проверять? Обычным LOT-ом или ваять собственный интерфейс (что вряд-ли, судя по уровню вопросов)?
Постараюсь описать задачу более конкретно.
В отделе была написана программа на Access в которой формируются оборотно-сальдовые ведомости по счетам 10, 21, 43. Все расчеты ведутся на SQL сервере с помошью написанных процедур, а в Access просто строится отчет. По бухгалтерии формируется начальное сальдо, которое берется из таблицы Saldmoun, приход - расход их OBOROT и расчитывается конечное сальдо. Оперативные данные беруться из таблицы Saldomc все это разбивается по подразделениям и номенклатуре. Затем бухгалтер ищет отклонения и старается их устранить.

Варианты могут быть следующие:
1. кто-то поправил ордер, а проводка не изменилась (изменилось оперативное сальдо)
2. нет проводки у документа .
3. есть проводка, но нет документа (но на моей памяти такого не было пока)

Сложность в том, что объем документов и номенклатура очень большая и бухгалтеру приходиться проверять огромное количество документов пока устранишь отклонение. Вот и нужно найти решение как это сделать автоматически.

VIP не использовали потому что не знали как им пользоваться в то время, а сейчас сделана огромная работа вот и приходится поддерживать эту программу, может в будушем и перепишем, но пока хватает текущей работы.
Ведомости строятся только по вышеуказанным счетам, поскольку и всех в KAU1 стоит MC. Соответсвие оперативных и бухгалтерских данных проводится по типу МЦ (каждый тип МЦ настроен на определенный счет и есть таблица соответсвия на SQL).
Я думал может кто-нибудь занимался чем-то подобным и мог бы поделиться опытом.