|
v7: Проблема с прямым запросом к MSSQL | ☑ | ||
---|---|---|---|---|
0
Art-SiteDesign
14.06.13
✎
02:51
|
Добрый день уважаемые форумчане!
С недавнего времени столкнулся с такой проблемой: Необходимо прямым запросом к MSSQL базе 1с (комплексная 7.7) получить информацию о дебиторской задолженности по каждому контрагенту. Если быть точнее, необходимо после того как будет выбран контрагент, зная его id можно было вывести табличку: дата реализации, сумма реализации, сумма задолженности и сумма оплаты (все это в зависимости от текущей даты) На данный момент мне известны следующие данные: 1) Необходимо искать дебитовое сальдо по 62 счету... 2) Есть в MSSQL такие прекрасные таблицы, по которым и надо как-то формировать запрос: #==TABLE no 560 : Отбор проводок по субконто # Name |Descr |SQLTableNam|RecordLock T=1SSBSEL |Отбор проводок по субконто |_1SSBSEL | #-----Fields------- # Name |Descr |Type|Length|Precision F=ROW_ID |Row ID |I |0 |0 F=SBKINDID |Sb Kind ID of select|I |0 |0 F=VAL |Value |C |9 |0 F=DOCID |Doc ID |C |9 |0 F=DATE_TIME_DOCID |Date |C |23 |0 F=NUMBER |Prov number |I |0 |0 F=CORNO |Correspond number |I |0 |0 #==TABLE no 552 : Счета # Name |Descr |SQLTableNam|RecordLock T=1SACCS |Счета |_1SACCS |R #-----Fields------- # Name |Descr |Type|Length|Precision F=ROW_ID |Row ID |I |0 |0 F=ID |Account Id |C |9 |0 F=PLANID |Plan Id |I |0 |0 F=SCHKOD |Account code(number)|C |8 |0 F=SCHIM |Account description |C |25 |0 F=SCHV |Flag Currency enable|L |0 |0 F=SCHKOL |Flag Amount enable |L |0 |0 F=SCHSINGLE |Flag no need corresp|L |0 |0 F=ISFOLDER |Flag Have child acco|L |0 |0 F=ISMARK |Flag Object is Marke|L |0 |0 F=LEVEL_ |Level of Account |S |0 |0 F=MDID |Metadata Id |I |0 |0 F=ACTIVE |Flag Active |Y |0 |0 F=VERSTAMP |Version stamp |I |0 |0 F=SC0 | |I |0 |0 F=OSC0 | |Y |0 |0 F=FSC0 | |Y |0 |0 F=SC1 | |I |0 |0 F=OSC1 | |Y |0 |0 F=FSC1 | |Y |0 |0 F=SC2 | |I |0 |0 F=OSC2 | |Y |0 |0 F=FSC2 | |Y |0 |0 F=SP7737 |(P)ПолнНаименование |M |0 |0 #==TABLE no 554 : Проводки # Name |Descr |SQLTableNam|RecordLock T=1SENTRY |Проводки |_1SENTRY | #-----Fields------- # Name |Descr |Type|Length|Precision F=ROW_ID |Row ID |I |0 |0 F=DOCID |Document Id |C |9 |0 F=NUMBER |Prov number |I |0 |0 F=CORNO |Correspond number |I |0 |0 F=DATE_TIME_DOCID |date+time+docid |C |23 |0 F=ACCDTID |AccountDt Id |C |9 |0 F=ACCKTID |AccountKt Id |C |9 |0 F=SUM_ |Prov sum |N |14 |2 F=CURRID |Currency Id |C |9 |0 F=CURSUM |Prov currency sum |N |14 |2 F=AMOUNT |Prov amount |N |14 |3 F=PROVKIND | |C |1 |0 F=ACTIVE | |C |1 |0 F=DTFLAGS | |Y |0 |0 F=KTFLAGS | |Y |0 |0 F=DOCLINENO |Doc line number |I |0 |0 F=SP7734 |(P)СодержаниеПроводк|C |50 |0 F=SP7735 |(P)НомерЖурнала |C |2 |0 F=SP7736 |(P)РазделительУчета |C |9 |0 F=SP27758 |(P)ПервичныйДокумент|C |25 |0 F=DTSC0 | |C |9 |0 F=VDTSC0 | |I |0 |0 F=ODTSC0 | |Y |0 |0 F=DTSC1 | |C |9 |0 F=VDTSC1 | |I |0 |0 F=ODTSC1 | |Y |0 |0 F=DTSC2 | |C |9 |0 F=VDTSC2 | |I |0 |0 F=ODTSC2 | |Y |0 |0 F=KTSC0 | |C |9 |0 F=VKTSC0 | |I |0 |0 F=OKTSC0 | |Y |0 |0 F=KTSC1 | |C |9 |0 F=VKTSC1 | |I |0 |0 F=OKTSC1 | |Y |0 |0 F=KTSC2 | |C |9 |0 F=VKTSC2 | |I |0 |0 F=OKTSC2 | |Y |0 |0 Если кто может, помогите пожалуйста разобраться что и как.... Если можно то пример запроса с выводом долга по реализациям для определенного контрагента. Дело в том, что в 1с я плохо разбираюсь и такие понятия как счет, сальдо и.т.д. ля меня темный лес =( Заранее спасибо!!! |
|||
1
Zhuravlik
14.06.13
✎
02:54
|
Зачем именно прямым?
|
|||
2
Zhuravlik
14.06.13
✎
03:01
|
+ В комплексной есть отчет "Ведомость по контрагентам", то что вам нужно видеть (дата реализации, сумма реализации, сумма задолженности и сумма оплаты) - как раз он и сможет показать :)
И на инфостарте, и на проклабе есть клоны этого отчета с самым разным припиленным функционалом... - Кроме того анализ взаиморасчетов с контрагентами - это анализ регистров "Взаиморасчеты ...", если говорить о 62 счете - "Взаиморасчеты с покупателями" (идентификатор - "Покупатели"). |
|||
3
Mikeware
14.06.13
✎
03:14
|
Присоединюсь к (1)...
Хотя догадываюсь, что ребяты хотят получат данные непосредственно с сайта... оно вам надо, сайтостроителям-то? |
|||
4
МуМу
14.06.13
✎
05:56
|
У нас есть такой переходник для сайтостроителей. Сам лично строил в какое то время. Типа шины данных. Набор вьюх и процедур понятных. Посмотрите на сайте softpoint.ru
|
|||
5
ЧеловекДуши
14.06.13
✎
06:33
|
(2) Он тормозной на больших объемах информации :)
|
|||
6
ЧеловекДуши
14.06.13
✎
06:35
|
(0) Держи горемыка, изучай...
http://www.1cpp.ru/forum/YaBB.pl?num=1288774760/all Это ВК является интерфейсной частью 1С + SQL, поля вида SP7735 можно представлять в запросе по человечески "СодержаниеПроводк" |
|||
7
ЧеловекДуши
14.06.13
✎
06:36
|
+ Требует знание Запросов wiki:SQL
Хватит познания в запросов на ФоксПро :) |
|||
8
sttt
14.06.13
✎
06:44
|
можно и без прямых запросов и без вк, родным 1с, летает быстро
|
|||
9
Mikeware
14.06.13
✎
06:46
|
(6) ему надо снаружи, без 1С. а снаружи и без 1с с 1с++ не получится.
поэтому либо (4), либо препроцессировать 1с++ запрос, и встаслять в свой сайтоскрипт... |
|||
10
ЧеловекДуши
14.06.13
✎
07:31
|
(9) Вот оно как :(
Не повезло, я ему сочувствую, главное не спятить из-за SP7735 и ежи подобному :) Тогда все просто, ему придется писать "аналог" 1С++, кпримеру что-то вроде: Select * From [Док.Реализация] as Реал(NOLOCK) И строку вида "[Док.Реализация]" заменять на нужную ему команду :) |
|||
11
Mikeware
14.06.13
✎
07:50
|
(10) не надо.
достаточно написать "нормльный 1с++ запрос", и прогнать его через Отладка(1) или ОбрМетаСКЛ() |
|||
12
Mikeware
14.06.13
✎
07:50
|
+(11) ну и не выдергивать агрегатные типы, а приводить к примитивным.
|
|||
13
ADirks
14.06.13
✎
08:46
|
А лучше всё-таки вьюхи нагенерить, с человеческими именами таблиц и колонок. Я давно пишу запросы исключительно ч/з вьюхи - это намного удобнее, и QA потом удобно смотреть.
Хотя, с бухитогами всё равно гемор конечно. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |