Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику! (число прочтений - 5503 )
Yahooey
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 28
Зарегистрирован: 25. Августа 2010
Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
01. Сентября 2010 :: 04:36
Печать  
День добрый! подскажите кто может!

пишу запрос:

|SELECT
|SBKINDID as [ВидСубконто $Субконто]
|,VAL as [Счет $Счет]
|,*
|      FROM  1SSBSEL
|WHERE
|      VAL =:ЛицСчет";

не получается представить субконто ( |SBKINDID as [ВидСубконто $Субконто])! Счет вроде представил(VAL as [Счет $Счет]). но некоторые значения не представляются. то есть идет таблица в некоторых строках счет представлен в некоторых - пустое значение. А самое страшное не получается сделать отбор по счету.

Кому не трудно помогите разобраться. Самообразованием занимаюсь. а спросить больше не у кого

  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #1 - 01. Сентября 2010 :: 05:07
Печать  
ВидСубконто, это не само  Субконто..
ЗЫ: не помню, есть ли типизация вида субконто, на крайняк, получишь его потом как ЗначениеИзСтрокиБД ..или можешь заранее подготовить табличку соответствий и с ней соединятся в запросе.
ЗЫЫ: А так, пользуйся классом AccountsRecordset от berezdetsky
  
Наверх
 
IP записан
 
Yahooey
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 28
Зарегистрирован: 25. Августа 2010
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #2 - 01. Сентября 2010 :: 05:17
Печать  
а что это?

пытюсь разобрать запрос
|SELECT DOCID+STR(NUMBER,5)   as ключД
     |      FROM  1SSBSEL  -- эта таблица по выбранным субконто, использование дает приличное, но счета.......
     |      WHERE  SBKINDID+VAL + DTOS(DATE)+ TIME+DOCID+STR(NUMBER,5)+STR(CORNO,5) Between
     |             :ТипСуб+:ЛицСчет+DTOS(:ДатаНачала~~)  +'      '+'    0'+'    0'
     | and :ТипСуб+:ЛицСчет+DTOS(:ДатаКонца~~)  +'ZZZZZZ'+'99999'+'99999'

из http://www.1cpp.ru/forum/YaBB.pl?num=1211377364/21

и не совсем понятно  - :ТипСуб+:ЛицСчет
что он передает в :ТипСуб и :ЛицСчет

:ЛицСчет - это наверно счет по коду. но у меня даже это не отрабатывает
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #3 - 01. Сентября 2010 :: 05:24
Печать  
может быть это?

http://www.1cpp.ru/docum/icpp/html/ODBC.html#id28
Цитата:
Типизация колонок типами 1С в тексте запроса.
...

{Субконто|Subconto}
char(13) - идентификатор значения субконто (с видом или без вида). Типизируется в значение субконто, кроме того в наборе данных должна находиться колонка с именем составленным из имени этой колонки и суффикса {_вид|_kind} (чувствительно к регистру), в которой должны содержаться идентификаторы видов субконто. Тип колонки SQL: int, DBF: char(4). Типизация субконто простых типов (число, строка, дата) не поддерживается.
  

1&&2&&3
Наверх
 
IP записан
 
Yahooey
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 28
Зарегистрирован: 25. Августа 2010
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #4 - 01. Сентября 2010 :: 05:41
Печать  
писал       |substr(SBKINDID,1,4) as [ВидСубконто $ВидСубконто]
не работает
      |substr(SBKINDID,1,4) as [ВидСубконто $Документ]
Не работает

наверно не правильно что то использую. как использовать char(4)
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #5 - 01. Сентября 2010 :: 05:47
Печать  
Ну тип того:

Код
Выбрать все
мд = СоздатьОбъект("MetaDataWork");

 Субконто("Контрагенты"))));
или
1").ВидСубконто(1)));


 Запрос.УстановитьТекстовыйПараметр("ЛицСчет", СчетПоКоду(НужныйСчет)); 


  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #6 - 01. Сентября 2010 :: 05:49
Печать  
Yahooey писал(а) 01. Сентября 2010 :: 05:41:
писал       |substr(SBKINDID,1,4) as [ВидСубконто $ВидСубконто]
не работает
      |substr(SBKINDID,1,4) as [ВидСубконто $Документ]
Не работает

наверно не правильно что то использую. как использовать char(4)


не надо путать ВидСубконто с Документом!

  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #7 - 01. Сентября 2010 :: 05:56
Печать  
Да и.. типизация $ВидСубконто есть только у ODBCRecordset, а вот
OLEDBData её не поддерживает.
  
Наверх
 
IP записан
 
Yahooey
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 28
Зарегистрирован: 25. Августа 2010
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #8 - 01. Сентября 2010 :: 06:15
Печать  
почему то во всех строках SBKINDID = 6C7...
а VAL разный и такой код:
     База = СоздатьОбъект("OLEDBData");
     Соединение = "Provider=VFPOLEDB.1;Data Source=" + КаталогИБ()+ ";Mode=ReadWrite;Extended Properties="";User ID="";Password="";Mask Password=False;Collating Sequence=MACHINE;DSN=""";
     Рез = База.Соединение(Соединение);
     Запрос = База.СоздатьКоманду();
     
     мд = СоздатьОбъект("MetaDataWork");
     
     
     ТекстЗапроса = "
     |SELECT
     |*
     |      FROM  1SSBSEL
     |      WHERE  SBKINDID+VAL + DTOS(DATE)+ TIME+DOCID+STR(NUMBER,5)+STR(CORNO,5) Between
     |             :ТипСуб+:ЛицСчет+DTOS(:ДатаНачала~~)  +'      '+'    0'+'    0'
     | and :ТипСуб+:ЛицСчет+DTOS(:ДатаКонца~~)  +'ZZZZZZ'+'99999'+'99999'";
     
     Запрос.УстановитьТекстовыйПараметр("ДатаНачала",ВыбНачПериода);
     Запрос.УстановитьТекстовыйПараметр("ДатаКонца",ВыбКонПериода);
     ").ВидСубконто(2)));
     Запрос.УстановитьТекстовыйПараметр("ЛицСчет", СчетПоКоду("УПС"));
     
     
     
     ТЗ = Запрос.ВыполнитьИнструкцию(ТекстЗапроса);
     ТЗ.ВыбратьСтроку();

ничего не дает.... мутное дело
  

000.JPG ( 85 KB | Загрузки )
000.JPG
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #9 - 01. Сентября 2010 :: 06:23
Печать  
Открой видыСубконто в пофигураторе и посмотри, на каких видах воткнута галка Отбор - только эти виды ты и видишь в этой табличке.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #10 - 01. Сентября 2010 :: 06:29
Печать  
Yahooey писал(а) 01. Сентября 2010 :: 06:15:
ничего не дает.... мутное дело


Для начала, нет команды
Запрос.Выполнить("EXECSCRIPT('SET ANSI OFF')");

а во-вторых, уверен, что у выбранного вида субконто стоит отбор по нему в пофигураторе ?

  
Наверх
 
IP записан
 
Yahooey
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 28
Зарегистрирован: 25. Августа 2010
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #11 - 01. Сентября 2010 :: 06:40
Печать  
галка не стояла. но я как начал рыться дня два назад ее установил... теперь перепровести наверно все надо что эти движения появились
  
Наверх
 
IP записан
 
Yahooey
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 28
Зарегистрирован: 25. Августа 2010
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #12 - 01. Сентября 2010 :: 06:49
Печать  
Попробовал по перепроводить, ничего это не дало...
  
Наверх
 
IP записан
 
Yahooey
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 28
Зарегистрирован: 25. Августа 2010
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #13 - 01. Сентября 2010 :: 06:57
Печать  
))))))))))))) Смех
наперепроводился млять.
таблица 1SSBSEL полностью пуста и весит 258 байт

что бы получить такой результат я на первом и втором субконто счета "УПС" установил галки - отбор! Очень довольный
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Запрос по таблице 1SSBSEL. 1С++. Объясните чайнику!
Ответ #14 - 01. Сентября 2010 :: 07:21
Печать  
А отбор по этим видам субконто тебе точно необходим вообще ?
И запрос соответственно к этой табличке ?
Может, стоит что-то в консерватории подправить сперва ?
Улыбка)
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать