Переключение на Главную Страницу Страницы: 1 ... 4 5 [6] 7 8 ... 17 ОтправитьПечать
Очень популярная тема (более 25 ответов) Прямые запросы к бухгалтерским итогам (число прочтений - 124012 )
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #75 - 22. Марта 2007 :: 09:46
Печать  
Да спасибо. Все работает.
А где бы узнать про $ВидДокумента36 и может есть какие нибудь другие виды, а то тыкаюсь как слепой щенок. Дайте пожалуйста ссылочку, где почитать можно. Улыбка
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #76 - 22. Марта 2007 :: 09:50
Печать  
RuporAbsurda писал(а) 22. Марта 2007 :: 09:46:
Дайте пожалуйста ссылочку, где почитать можно. Улыбка

http://www.1cpp.ru/docum/html/ODBC.html
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #77 - 22. Марта 2007 :: 09:52
Печать  
Спасибо.
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #78 - 29. Мая 2007 :: 08:09
Печать  
нужно вытащить только последний документ оплаты
таким запросом
|SELECT
|ОсновнойОборотыДтКт.СубконтоКт1 [СубконтоКт1 $Субконто]                  
|, ОсновнойОборотыДтКт.СубконтоКт1_вид                  
|,right(ПозицияДокумента, 9) AS [Док $Документ]
|, ВидДокумента Док_вид
|, SUM(ОсновнойОборотыДтКт.СуммаОборот)      AS Оплата      
|FROM $БИОборотыДтКт.Основной(:Дата01, :Дата02 ~,Документ,,((СчетКт IN (SELECT val FROM #accs)) AND (СубконтоКт1 IN (SELECT val FROM #kontr)) ))AS ОсновнойОборотыДтКт                  
|GROUP BY
| ОсновнойОборотыДтКт.СубконтоКт1
|, ОсновнойОборотыДтКт.СубконтоКт1_вид      
|,right(ПозицияДокумента, 9)
|, ВидДокумента
|";      

выводятся все документы за период. Помогите! Как выбрать только последний документ?
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #79 - 29. Мая 2007 :: 08:12
Печать  
Документ определенного вида?
  
Наверх
ICQ  
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #80 - 29. Мая 2007 :: 08:36
Печать  
Да Выписка
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #81 - 29. Мая 2007 :: 08:37
Печать  
IMHO, эффективнее будет обратиться непосредственно к таблице проводок.
Что-то вроде

Код
Выбрать все
select ktsc1, max(date_time_docid)
from _1sentry(nolock)
where ...
group by ktsc1 



А суммы считать для уже отобранных документов.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #82 - 29. Мая 2007 :: 08:51
Печать  
RuporAbsurda писал(а) 29. Мая 2007 :: 08:36:
Да Выписка

Ну если выписка то получаем последний проведенный документ

ТекстЗапроса = "
|SELECT
| TOP 1
|  Жур.IDDoc as [Док $Документ],
|  Жур.IDDocDef as Док_вид,
|  CAST(LEFT(Жур.Date_Time_IDDoc, 8) as DateTime) as ДатаДок,
|  $Док.Контрагент as [Контрагент $Справочник]
|FROM
|  _1SJourn Жур
|INNER JOIN
|  $Документ.Выписка as Док ON Док.IDDoc = Жур.IDDoc
|WHERE
|  Жур.Date_Time_IDDoc BETWEEN :НачДата AND :КонДата~ AND
|  Жур.IDDocDef = $ВидДокумента.Выписка AND
|  Жур.Closed & 1 = 1
Order by Жур.Date_Time_IDDoc desc";

Ну  и где нибудь здесь ещё упомянуть _1SENTRY, Улыбка а AccautRecordSet здесь использовать перебор
  
Наверх
ICQ  
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #83 - 29. Мая 2007 :: 08:52
Печать  
Как я понимаю ktsc1 - это одно из полей  таблицы _1sentry. А где взять описание всех полей таблицы _1sentry (т.е. какие данные в каком поле содержатся)?
Нашел
1SENTRY      Проводки
Row_Id      Ид строки
DocId      Ид документа
Number      Номер проводки
CorNo      Номер корресподенции (?)
Date_Time_DocId      Дата, Время, Ид документа
AccDtId      Ид счета дебета
AccKtId      Ид счета кредита
Sum_      Сумма проводки
CurrId      Ид валюты
CurSum      Валютная сумма проводки
Amount      Составная сумма (?) проводки
ProvKind      Тип проводки (?)
DtFlags      Флаги дебета
KtFlags      Флаги кредита
DocLineNo      Номер строки документа
PlanId      Ид плана счетов
SPnnn      Параметр nnn
DTSCn      Субконто n дебета
VDTSCn      (?) Субконто n дебета
ODTSCn      (?) Субконто n дебета
KTSCn      Субконто n кредита
VKTSCn      (?) Субконто n кредита
OKTSCn      (?) Субконто n кредита
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #84 - 29. Мая 2007 :: 08:59
Печать  
Почитай файл 1Cv7.DDS, в каталоге БД Улыбка
  
Наверх
ICQ  
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #85 - 29. Мая 2007 :: 09:25
Печать  
Вырисовывается такой запрос, только вот как задать типизацию документа?
|SELECT
|  Проводки.ktsc1 AS [Контрагент $Справочник.Контрагенты],
|  right(max(Проводки.date_time_docid),9) AS [Док $Документ]
|FROM
|  _1sentry AS Проводки (nolock)
|WHERE
|  Проводки.accktid IN (SELECT val FROM #accs) AND
|  Проводки.KTSC1 IN (SELECT val FROM #kontr)  AND
|  Проводки.date_time_docid between :Дата01 and :Дата02~
|GROUP BY
|  Проводки.ktsc1
|";
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #86 - 29. Мая 2007 :: 09:38
Печать  
Про типизацию читай справку в разделе учебник, там вё написано:
        Для типизации документа по полю IDDoc необходимо, чтобы в выборке присутствовало поле содержащее IDDocDef с именем <ИмяПоляIDDoc>_вид, в нашем случае это будет Док_вид. Для полей, которые содержат реквизит типа “Документ” вспомогательного поля не требуется.
  
Наверх
ICQ  
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #87 - 29. Мая 2007 :: 09:39
Печать  
Хорошее описание _1sentry есть на сайте у toypaul и в доке на toysql.

Типизация документа:
Код
Выбрать все
selet ...
    , iddocdef Док_вид
from _1sentry(nolock)
    inner join _1sjourn(nolock) on date_time_docid = date_time_iddoc
... 

Улыбка
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Прямые запросы к бухгалтерским итогам
Ответ #88 - 29. Мая 2007 :: 11:34
Печать  
Не могу понять в чем дело. В результате запроса в документах несоответсвие Контрагентам. Т.е. если в результате показывает Контрагент "A" в документе Выписка - то в этой выписке контрагента "A" нет???
|SELECT
|  Проводки.ktsc1 AS [Контрагент $Справочник.Контрагенты],
|  right(Проводки.date_time_docid,9) AS [Док $Документ]
|, жур.iddocdef Док_вид
|FROM
|  _1sentry AS Проводки (nolock)
|  inner join _1sjourn AS жур (nolock) ON Проводки.date_time_docid = жур.date_time_iddoc
|WHERE
|  Проводки.accktid IN (SELECT val FROM #accs) AND
|  ((Проводки.AccDtId IN (SELECT val FROM #accsd01)) OR (Проводки.AccDtId IN (SELECT val FROM #accsd02))) AND
|  Проводки.KTSC1 IN (SELECT val FROM #kontr)  AND
|  Проводки.date_time_docid between :Дата01 and :Дата02~
|GROUP BY
|  Проводки.ktsc1
| ,right(Проводки.date_time_docid,9)
|, жур.iddocdef
|";
  
Наверх
 
IP записан
 
berezdetsky
1c++ power user
Отсутствует


barba non facit sisadminum

Сообщений: 1986
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Прямые запросы к бухгалтерским итогам
Ответ #89 - 29. Мая 2007 :: 11:50
Печать  
Это я тебя запутал чуть выше по топику Смущённый. Субконто нумеруются с 0. Т.е. СубконтоКт1 хранится в поле KTSC0. Также здесь нет проверки на вид субконто (хранится, соответственно, в VKTSC0). И не забывай про поле ACTIVE, иначе в отчет попадут непроведённые документы.
  

пароль как коньяк, чем больше звездочек, тем лучше
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 ... 4 5 [6] 7 8 ... 17
ОтправитьПечать