|
Как получить номер последнего документа ? | ☑ | ||
|---|---|---|---|---|
|
0
Rock_street
10.02.11
✎
17:29
|
Нужно получить номер последнего приходника, и сравнить его с номером последнего расходники в итоге иметь максимальный помогите туплю.
ПослЭлм=Документы.ПриходныйКассовыйОрдер.Выбрать().Номер; Так не работает. Про сравнение я вообще молчу. |
|||
|
1
zbv
10.02.11
✎
17:30
|
запросом
|
|||
|
2
Rock_street
10.02.11
✎
17:32
|
Непонимать код плиз
|
|||
|
3
ice777
10.02.11
✎
17:43
|
(0) типа так:
ВЫБРАТЬ МАКСИМУМ(док.номер) КАК Ссылка ИЗ Документ.ПриходныйКассовыйОрдер КАК док |
|||
|
4
Rock_street
10.02.11
✎
17:48
|
Это что за синтаксис ?
|
|||
|
5
Vladal
10.02.11
✎
17:50
|
Рабочий пример - номер документа [префикс-число/месяц/ПорядковыйНомер]
// ВЛ - 2011-01-10 - Возвращает ожидаемый новый номер документов НаХранение // с учетом префикса филиала текущего пользователя Функция СформироватьНовыйНомерХР(ДатаДокумента, Самовывоз = Ложь) Перем Филиал, КодФилиала, ПрефиксФилиала, НовыйНомерДокумента; // ВЛ - 2011-01-06 - Нумерация документов внутри кода филиала // Формируем строку в 4 символа, т.к. получаются неоднозначности по подстроке // "ХРУ" и "ХРУ1". А когда "ХРУ-" и "ХРУ1" - всё однозначно. // Условно самовывоз с 50-го номера Филиал = ПараметрыСеанса.ТекущийПользователь.Родитель.Филиал; КодФилиала = ?(Филиал = Справочники.ФилиалыФирмы.Купянск, "-", Филиал.Код); ПрефиксФилиала = Лев(ПрефиксНомеров + КодФилиала, 4); Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1 | РеализацияТоваровУслуг.НомерСчетаВетСвидедельства КАК НомерСчета, | РеализацияТоваровУслуг.Ссылка |ИЗ | Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг |ГДЕ | (ВЫРАЗИТЬ(РеализацияТоваровУслуг.НомерСчетаВетСвидедельства КАК СТРОКА(4))) = &ПрефиксФилиала | И НАЧАЛОПЕРИОДА(РеализацияТоваровУслуг.Дата, ДЕНЬ) = НАЧАЛОПЕРИОДА(&Дата, ДЕНЬ) | И РеализацияТоваровУслуг.Самовывоз = &Самовывоз // ВЛ - 2011-01-14 - | И РеализацияТоваровУслуг.Проведен | |УПОРЯДОЧИТЬ ПО | НомерСчета УБЫВ"; Запрос.УстановитьПараметр("ПрефиксФилиала", ПрефиксФилиала); Запрос.УстановитьПараметр("Самовывоз", Самовывоз); Запрос.УстановитьПараметр("Дата", Дата); РезультатЗапроса = Запрос.Выполнить().Выгрузить(); НайденоСтрок = РезультатЗапроса.Количество(); // Если в выборке уже есть номер, его распарсим и добавим 1, иначе присвоим новый Если НайденоСтрок > 0 Тогда // Парсим номер документа: // Условно откусим 4 символа справа, преобразуем в число и добавим 1 СтрокаДляРазбора = Прав(РезультатЗапроса[0].НомерСчета, 4); ПозицияСлэша = Найти(СтрокаДляРазбора, "/"); СтрокаДляРазбора = Прав(СтрокаДляРазбора, 4 - ПозицияСлэша); РезультатПарсинга = Число(СтрокаДляРазбора); НовыйНомерДокумента = РезультатПарсинга + 1; Иначе НовыйНомерДокумента = ?(Самовывоз, 50, 1); КонецЕсли; // на случай длины более 2 знаков ДлинаНомераДокумента = СтрДлина(НовыйНомерДокумента); ДлинаНомераДокумента = ?(ДлинаНомераДокумента = 1, 2, ДлинаНомераДокумента); НовыйНомерДокумента = ПрефиксФилиала + ?(Филиал = Справочники.ФилиалыФирмы.Купянск, "", "-") // Один дефис в префиксе + День(ДатаДокумента) + "/" + Месяц(ДатаДокумента) + "/" + Формат(НовыйНомерДокумента, "ЧЦ="+ДлинаНомераДокумента+";ЧВН=;ЧГ=0"); Возврат НовыйНомерДокумента; КонецФункции // СформироватьНовыйНомерХР() |
|||
|
6
Murzz
10.02.11
✎
17:51
|
Если нужен именно последний, то скорее так
ВЫБРАТЬ первые 1 док.номер ИЗ Документ.ПриходныйКассовыйОрдер КАК док упорядочить по док.дата Убыв |
|||
|
7
nop
10.02.11
✎
17:53
|
(4) хороший вопрос, но палишся. http://www.google.com.ua/search?rlz=1C1CHMR_ukUA336UA336&sourceid=chrome&ie=UTF-8&q=что+такое+запросы+1с
|
|||
|
8
Rock_street
10.02.11
✎
17:54
|
Идея ясна спасибо
Запрос = Новый Запрос; Запрос.Текст ="ВЫБРАТЬ МАКСИМУМ(док.номер) КАК Ссылка ИЗ Документ.ПриходныйКассовыйОрдер КАК док"; РезультатЗапроса = Запрос.Выполнить().Выгрузить(); Сообщить("фвыф"); Сообщить(РезультатЗапроса.); |
|||
|
9
Rock_street
10.02.11
✎
18:08
|
Что то не могу нашел как формировать конструктором как данные выбрать
|
|||
|
10
Rock_street
10.02.11
✎
18:08
|
Запрос.Текст ="ВЫБРАТЬ МАКСИМУМ (док.номер) КАК Ссылка ИЗ Документ.ПриходныйКассовыйОрдер КАК док";
РезультатЗапроса = Запрос.Выполнить().Выгрузить(); так мне подходит |
|||
|
11
Rock_street
10.02.11
✎
18:15
|
Как полуить значение в переменную
|
|||
|
12
ice777
10.02.11
✎
19:14
|
(11) да ты нулевой, смотрю.
Рассмотри любой запрос в типовой. метод Следующий() |
|||
|
13
ice777
10.02.11
✎
19:23
|
(6) ему номер а не последний.
|
|||
|
14
Stimcool
10.02.11
✎
19:26
|
В таких случаях обычно говорят "Радченко"
|
|||
|
15
NewNick
10.02.11
✎
19:27
|
(11) переменная = значение;
|
|||
|
16
ice777
10.02.11
✎
19:30
|
(14) неа, Митичкин, говорят! )
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |