|   |   | 
| 
 | Получение разницы между данными ТЗ | ☑ | ||
|---|---|---|---|---|
| 0
    
        Валидатор 10.01.14✎ 17:45 | 
        Есть 1 ТаблицаЗначений, с 2 колонками: номенклатура и количество
 есть 2 ТаблицаЗначений, с такими же колонками Как получить разнциу между ними? То есть в первой таблице: (Таблица сколько нужно данных) Номенклатура Количество стул 5 Во второй (таблица сколько есть на остатках товаров) Номенклатура Количество стул 3 и нужно чтобы в результате я получил Стул 2 (то есть сколько нужно еще) | |||
| 1
    
        МойКодУныл 10.01.14✎ 17:46 | 
        запросом.:)     | |||
| 2
    
        ДенисЧ 10.01.14✎ 17:46 | 
        (1) Это моя реплика!     | |||
| 3
    
        МойКодУныл 10.01.14✎ 17:46 | 
        (2) я ее нагло украл!.     | |||
| 4
    
        Валидатор 10.01.14✎ 17:47 | 
        блин мужики помогите с запросом)     | |||
| 5
    
        ДенисЧ 10.01.14✎ 17:49 | 
        (4) Помещаешь тз в вт, потом эти вт внутрене соединяешь и вычитаешь.     | |||
| 6
    
        МихаилМ 10.01.14✎ 17:54 | 
        (0)
 в поиск обсуждалось десятки раз (1) попробуте в файловой версии запросом сравнить 2 тз по 50000 строк тоже в клиент серверном варианте на клиенте да и на сервере даже при использовании shared memory (ms sql) ждать. | |||
| 7
    
        Wobland 10.01.14✎ 18:01 | 
        (5) а чего бы не полно?
 //вот сейчас автор не понимает, я уверен | |||
| 8
    
        Валидатор 10.01.14✎ 18:02 | 
        Кол=ТаблицаТоваров.Количество();
 н=1; Пока н <= Кол цикл Стр = ТаблицаТоваров.Получить(Кол-н); СтрОстатки = Остатки.Найти(Стр.Номенклатура, "Номенклатура"); Если СтрОстатки<>Неопределено И СтрОстатки.Остаток>0 тогда Если СтрОстатки.Остаток>=Стр.Количество тогда ТаблицаТоваров.Удалить(Стр); Иначе Стр.Количество = Стр.Количество-СтрОстатки.Остаток; СтрОстатки.Остаток= СтрОстатки.Остаток-Стр.Количество; КонецЕсли; КонецЕсли; н=н+1; КонецЦикла; так сделал) | |||
| 9
    
        SUA 10.01.14✎ 18:19 | 
        (6) в клиент-серверноим? на клиенте? запросом?     | |||
| 10
    
        ТогдаКонецЕсли 10.01.14✎ 18:55 | 
        К первой таблице присоединяешь вторую с отрицательными значениями количества(добавлением строк).
 Сворачиваешь по номенклатуре. Там, где не ноль - там разница. | |||
| 11
    
        mistеr 10.01.14✎ 19:59 | 
        (10) +1. Запрос это слишком IMHO.     | |||
| 12
    
        К_Дач 10.01.14✎ 20:07 | 
        (10) +1. из результата сворачивания сразу выбрать где не ноль. Самый норм вариант. Эх, вот бы на клюшках такое)))     | |||
| 13
    
        2S 10.01.14✎ 20:09 | 
        (12) легко     | |||
| 14
    
        К_Дач 10.01.14✎ 20:12 | 
        (13) работа с ВТ на клюшках - легко? ну-ну))     | |||
| 15
    
        2S 10.01.14✎ 20:14 | 
        нах ВТ на клюшках, сабж решается элементарно     | |||
| 16
    
        К_Дач 10.01.14✎ 20:15 | 
        (15) да это ежу понятно, я то про (10)     | |||
| 17
    
        К_Дач 10.01.14✎ 20:18 | 
        банан 15
 ананас 10 киви -5 апельсин -10 Выбери на 7.7 строки с минусом без цикла)) | |||
| 18
    
        2S 10.01.14✎ 20:23 | 
        как это связано с 10? там тоже выборку если без запроса     | |||
| 19
    
        К_Дач 10.01.14✎ 20:24 | 
        Свернуть в запросе - результат в вт - из вт выбрать нужное. Вот про что имею ввиду     | |||
| 20
    
        2S 10.01.14✎ 20:25 | 
        не ломай мне мозг     | |||
| 21
    
        vde69 модератор 10.01.14✎ 20:27 | ||||
| 22
    
        МихаилМ 10.01.14✎ 20:28 | 
        (17)
 элементарно : сортировка + метод вилки. | |||
| 23
    
        К_Дач 10.01.14✎ 20:37 | 
        (22) ну напиши код, мне даже интересно     | |||
| 24
    
        hhhh 10.01.14✎ 20:53 | 
        (22) ну запросом на порядок проще. Главное не забыть проиндексировать таблицы, чтобы результат мгновенно получать.     | |||
| 25
    
        МихаилМ 10.01.14✎ 21:11 | 
        (24)
 ну поробуйте в клиент серверной базе сравнить 2 тз по 50000 строк. и забудьте про "проще" | |||
| 26
    
        hhhh 10.01.14✎ 21:15 | 
        (25) так вы индексировавои временные таблицы или нет? Разница ведь в десятки тысяч раз.     | |||
| 27
    
        МихаилМ 10.01.14✎ 23:58 | 
        (26)
 не индексировал. время на передачу данных на сервер и обратно не сопоставимо с временем обработки (сервер 1с - мс скл; 2тз 50000 и 30000 строк ) те данные предаютя обрабатываются и возвращаются но разница в скорости ~ 500 раз. 5 сек и 20 мин. с толстого клиента больше (5000,3000) передать не удалось файловый вриант умирал еще на меньших объемах. 1с 8.2.18.61 | |||
| 28
    
        МихаилМ 11.01.14✎ 00:00 | 
        +(27)
 тоже с СКД : время на обработку не сопоставимо с временем вывода в ТЗ | |||
| 29
    
        Torquader 11.01.14✎ 01:53 | 
        (25) Так эти 50000 строк ещё откуда-то взять надо - они из воздуха не появятся - лучше оптимизировать ещё до процесса рождения ТаблицыЗначений.     | |||
| 30
    
        mistеr 11.01.14✎ 13:27 | 
        (29) +10     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |