Переключение на Главную Страницу Страницы: 1 [2]  ОтправитьПечать
Горячая тема (более 10 ответов) Получить документ по номеру (число прочтений - 5767 )
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Получить документ по номеру
Ответ #15 - 21. Мая 2008 :: 11:11
Печать  
Функция УложитьСписокЗначений(аRS, аСЗЗначений,Знач аИмяТаб, Знач аТип = "") Экспорт
     Перем сТекстЗапроса;
     Если ТипЗначенияСтр(аСЗЗначений) <> "СписокЗначений" Тогда
           Возврат 0;
     КонецЕсли;
     
     // Проверим есть ли такая таблица
     //Если  есть удалим
     аRS.Выполнить("
     |IF EXISTS (SELECT * FROM tempdb..sysobjects WHERE
     |ID=OBJECT_ID('tempdb.."+аИмяТаб+"') AND sysstat & 0xf = 3 )
     |DROP TABLE "+аИмяТаб);
     
     
     чМаксДлина = 1;
     Для к = 1 по аСЗЗначений.РазмерСписка() Цикл
           Знач1 = аСЗЗначений.ПолучитьЗначение(к,);
           чНоваяДлина = СтрДлина(СокрЛП(Строка(Знач1)));
           Если чМаксДлина<  чНоваяДлина  ТОгда
                 чМаксДлина =  чНоваяДлина;
           КонецЕсли;      
     КонецЦикла;

     //Создание временной таблицы
     
     аRS.Выполнить("
     |CREATE TABLE "+аИмяТаб+" (ID int, Val float)
     |");
     

     //Создадим новую
     
     //Запишем данные в таблицу
     Для к = 1 по аСЗЗначений.РазмерСписка() Цикл
           Знач1 = аСЗЗначений.ПолучитьЗначение(к,);
           сТекстЗапроса = "
           |Insert  into " + аИмяТаб+ "  Values (" + Строка(к) + ", " + Строка(Знач1) + ")
           |";
           Если аRS.Выполнить(сТекстЗапроса) = 0 Тогда
                 Сообщить(аRS.ПолучитьОписаниеОшибки());
                 Возврат 0;
           КонецЕсли;
     КонецЦикла;
     
     Возврат 1;
КонецФункции      // УложитьСписокЗначений
  
Наверх
ICQ  
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Получить документ по номеру
Ответ #16 - 21. Мая 2008 :: 11:24
Печать  
Nick писал(а) 21. Мая 2008 :: 11:11:
     чМаксДлина = 1;
     Для к = 1 по аСЗЗначений.РазмерСписка() Цикл
           Знач1 = аСЗЗначений.ПолучитьЗначение(к,);
           чНоваяДлина = СтрДлина(СокрЛП(Строка(Знач1)));
           Если чМаксДлина<  чНоваяДлина  ТОгда
                 чМаксДлина =  чНоваяДлина;


А это для чего?
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Получить документ по номеру
Ответ #17 - 21. Мая 2008 :: 11:26
Печать  
RuporAbsurda писал(а) 21. Мая 2008 :: 11:24:
Nick писал(а) 21. Мая 2008 :: 11:11:
     чМаксДлина = 1;
     Для к = 1 по аСЗЗначений.РазмерСписка() Цикл
           Знач1 = аСЗЗначений.ПолучитьЗначение(к,);
           чНоваяДлина = СтрДлина(СокрЛП(Строка(Знач1)));
           Если чМаксДлина<  чНоваяДлина  ТОгда
                 чМаксДлина =  чНоваяДлина;


А это для чего?


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


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Получить документ по номеру
Ответ #18 - 21. Мая 2008 :: 11:32
Печать  
Error converting data type varchar to float

|CREATE TABLE "+аИмяТаб+" (ID int, Val varchar)
  
Наверх
 
IP записан
 
RuporAbsurda
Senior Member
****
Отсутствует


I Love YaBB 2!

Сообщений: 413
Зарегистрирован: 29. Июня 2006
Re: Получить документ по номеру
Ответ #19 - 21. Мая 2008 :: 11:43
Печать  
Этот вариант тоже не катит. Результат пустой.
  
Наверх
 
IP записан
 
Nick
God Member
*****
Отсутствует



Сообщений: 1599
Местоположение: г.Новокузнецк
Зарегистрирован: 21. Февраля 2007
Пол: Мужской
Re: Получить документ по номеру
Ответ #20 - 21. Мая 2008 :: 12:18
Печать  
Тебе нужен бубен! Улыбка
  
Наверх
ICQ  
IP записан
 
Salimbek
God Member
*****
Отсутствует



Сообщений: 862
Зарегистрирован: 06. Июня 2006
Пол: Мужской
Re: Получить документ по номеру
Ответ #21 - 21. Мая 2008 :: 12:23
Печать  
RuporAbsurda писал(а) 21. Мая 2008 :: 11:43:
Этот вариант тоже не катит. Результат пустой.

Этот вариант - это какой?
  
Наверх
ICQ  
IP записан
 
sml
Full Member
***
Отсутствует


I Love 1С++!

Сообщений: 186
Зарегистрирован: 28. Февраля 2008
Re: Получить документ по номеру
Ответ #22 - 21. Мая 2008 :: 12:48
Печать  
RuporAbsurda писал(а) 21. Мая 2008 :: 09:47:
Есть список, в котором номера документов одного типа (реализация). Каким каком можно получить сами документы  из этого списка?


1. нада список документов запихать в список значений
2. затем этот список преобразуй в строку списокдок с разделителями и замени двойную кавычку на одинарную.

ну и запрос:
Код
Выбрать все
ТекстЗапр="
|SELECT
|  j.IDDOC,
|  j.iddocdef
|FROM _1sjourn j
|WHERE j.DOCNO In ("+списокдок+")
|  AND LEFT(j.DATE_TIME_IDDOC,4)='"+год+"'
|"; 

  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 
ОтправитьПечать