![]() |
|
Флаг проведения документа | ☑ | ||
---|---|---|---|---|
0
тишина
20.11.08
✎
17:06
|
собственно вопрос, а как его достать? в описаниях таблиц говорится, что это поле CLOSED в таблице журнала 1SJOURN, а там стоят цифры 4 или 5, при чем независимо от того, проведен документ или нет, как же, вся-таки, определяется признак проведения документа?
|
|||
1
ТелепатБот
гуру
20.11.08
✎
17:06
|
||||
2
Ёпрст
гуру
20.11.08
✎
17:14
|
"Так как первый бит его отвечает за то, проведен документ или нет, соответственно, сделав унарное умножение с 1, получим результат в виде 1 - проведен, 0 - непроведен. "
©http://www.script-coding.info/v77tables.html#1.2.4. |
|||
3
тишина
20.11.08
✎
17:17
|
я выполняла такой запрос, возвращается пустой набор записей
|
|||
4
Ёпрст
гуру
20.11.08
✎
17:19
|
код в студию
|
|||
5
тишина
21.11.08
✎
09:31
|
<b>SELECT DOCNO FROM DH37642 As Tab1 INNER JOIN 1SJOURN As TabJ ON (Tab1.IDDOC = TabJ.IDDOC) WHERE TabJ.CLOSED&1 = 1;</b>
|
|||
6
тишина
21.11.08
✎
09:31
|
просвятите, пжл-ста, как код выделять о_О
|
|||
7
тишина
21.11.08
✎
09:34
|
(3) кстати, если сделать условие "WHERE TabJ.CLOSED = 5;", то документы в наборе записей есть, то есть подключение к базе и выполнение запроса проходит успешно
|
|||
8
чувак
21.11.08
✎
09:38
|
А что мешает узнать из самоо объекта документа? Там же есть метод Проведен()
|
|||
9
тишина
21.11.08
✎
09:45
|
мне нужно разобраться с проведением прямым запросом, это для загрузки из внешней базы, чтобы можно было снимать признак проведения
|
|||
10
чувак
21.11.08
✎
09:47
|
(9) Еслт твоя внешная база тоже семерка, тогда не парься, а используй ОЛЕ
|
|||
11
ДенисЧ
21.11.08
✎
09:48
|
А это на какой компоненте closed=5 ?
|
|||
12
Злой Бобр
21.11.08
✎
09:50
|
(9) "прямым запросом" - что используешь, 1срр или SQL? В зависимости от этого и код строится.
|
|||
13
Ёпрст
гуру
21.11.08
✎
09:51
|
(5) у вас DBF что ли ? :)
|
|||
14
Ёпрст
гуру
21.11.08
✎
09:52
|
(11) на комплексной, к примеру.
|
|||
15
тишина
21.11.08
✎
10:01
|
внешняя база не 1с, писать хранимые процедуры буду не я, моя задача разобраться, что как и откуда доставать и куда ложить, не важно DBF или нет, в скульных таблицах тоже самое
|
|||
16
тишина
21.11.08
✎
10:01
|
T-SQL
|
|||
17
Ёпрст
гуру
21.11.08
✎
10:04
|
(16)
А почему тогда пишешь 1SJOURN вместо _1SJOURN ??? И еще, лучше 1сpp использовать, там есть метапарсер имён, и не надо думать о именах таблиц... а так, вот из FAQ: Если Константа.БазаSQL=0 Тогда // база DBF Проведен="and (Журнал.CLOSED%2=1)"; Непроведен="and (Журнал.CLOSED%2=0 and Журнал.ISMARK='')"; ПомеченНаУдаление="and (Журнал.ISMARK='*')"; НеПомеченНаУдаление="and (Журнал.ISMARK='')"; ... Иначе // база SQL Проведен="and (Журнал.CLOSED%2=1)"; Непроведен="and (Журнал.CLOSED%2=0 and Журнал.ISMARK=0)"; ПомеченНаУдаление="and (Журнал.ISMARK=1)"; НеПомеченНаУдаление="and (Журнал.ISMARK=0)"; ... КонецЕсли; |
|||
18
ДенисЧ
21.11.08
✎
10:05
|
(14) комплексная компонента? Что-то новенькое :-)
|
|||
19
dk
21.11.08
✎
10:07
|
можно тупо
WHERE ((TabJ.closed=1)or(TabJ.closed=5)) |
|||
20
ДенисЧ
21.11.08
✎
10:08
|
(19) А почему не TabJ.Closed <> 0 ?
|
|||
21
Ёпрст
гуру
21.11.08
✎
10:10
|
(19) or(TabJ.closed=3)
|
|||
22
Ёпрст
гуру
21.11.08
✎
10:10
|
(20) TabJ.closed=4 может быть.
|
|||
23
ДенисЧ
21.11.08
✎
10:11
|
(22) и что это значит?
|
|||
24
dk
21.11.08
✎
10:11
|
(21) такого вроде не бывает в 1С
|
|||
25
Ёпрст
гуру
21.11.08
✎
10:13
|
(23,24) звиняйте... затупил в пятницу...:)
|
|||
26
Ёпрст
гуру
21.11.08
✎
10:16
|
+25 хотя нет, посмотрел.. Closed и 4 и 5 и 3 есть :)
|
|||
27
тишина
21.11.08
✎
10:18
|
ребята, не тупите, сказала же запрос рабочий, выборка при других условиях происходит, не надо мне советовать компоненты, у меня конкретный вопрос, не засоряйте тему
(16) "CLOSED%2=1" не работает, а вот ISMARK='*' ещё вчера проверяла, всё фурычит |
|||
28
Ёпрст
гуру
21.11.08
✎
10:24
|
(27) у вас база дбф ? или всё же скуль?
|
|||
29
тишина
21.11.08
✎
10:28
|
эксперементирую на dbf
|
|||
30
ДенисЧ
21.11.08
✎
10:29
|
А всё-таки, почему (20) не прокатит?
|
|||
31
тишина
21.11.08
✎
10:31
|
(30) потому что там стоит 5, независимо от того, проведен док или нет, выше я об этом уже писала
|
|||
32
тишина
21.11.08
✎
10:34
|
у меня вообще подозрение, что признак проведения хранится где-то в другом месте, может что-то поменялось
|
|||
33
ДенисЧ
21.11.08
✎
10:34
|
ДОкументы, проведённые по кому нужны? По регистрам? или по бухучёту?
Если уж такая фигня с closed творится, то можно объединиться с таблицей движений или проводок. |
|||
34
тишина
21.11.08
✎
10:41
|
(33)по бухучету, в том то и дело, что нужно не просто удалять проводки, а снимать признак проведения при определённых условиях при выгрузке
|
|||
35
Ёпрст
гуру
21.11.08
✎
10:44
|
(27) а с чего уверенность, что CLOSED%2=1 не работает ?
|
|||
36
ДенисЧ
21.11.08
✎
10:46
|
предлагаю вариант :-)
Запускаем сиквел, включаем трассировку запросов, распроводим документ, и смотрим результаты трассировки, что и куда он пишет. |
|||
37
тишина
21.11.08
✎
10:50
|
(35) наверное с того, что проверяла
(36) спасибо за предложение, попробую 8) |
|||
38
Злой Бобр
21.11.08
✎
10:54
|
(16)(0)(5) Странно как-то. База ДБФ а пользуете скуль. Вот запрос для скульной базы (думаю перегнать базу в скуль не составит труда):
SELECT DOCNO FROM DH37642 INNER JOIN _1SJOURN ON DH37642.IDDOC = _1SJOURN.IDDOC WHERE (_1SJOURN.CLOSED & 1 = 1) |
|||
39
тишина
21.11.08
✎
10:57
|
да перегнать не составит, она там и есть, просто тестирую я обычно на DBF, мне так удобнее, а открывала таблицы скуля там тоже 5-ки
|
|||
40
Злой Бобр
21.11.08
✎
10:59
|
(39) Понятно. Сделай в скуле копию базы и там тренируйся.
Копируй код из (38) и будет тебе только проведенные документы. |
|||
41
Ёпрст
гуру
21.11.08
✎
11:06
|
(38) в ДБФ нет &
|
|||
42
Ёпрст
гуру
21.11.08
✎
11:07
|
(37) И чего? Не работает ? Не верю..
|
|||
43
тишина
21.11.08
✎
11:08
|
(42)с & запрос к DBF выполняется, а с % нет
|
|||
44
Злой Бобр
21.11.08
✎
11:18
|
(43) Мдя..., похоже кто-то непонимает отличия ДБФ базы 1С от Скульной. Мое мнение сводится к тому, что при наличии скуля ользовать ДБФ глупо, а в некоторых случаях даже "вредно" для здоровья.
Ну если уж так сильно хочется - для ДБФ : SELECT DOCNO FROM DH37642 INNER JOIN _1SJOURN ON DH37642.IDDOC = _1SJOURN.IDDOC WHERE (_1SJOURN.CLOSED <> 0) |
|||
45
Ёпрст
гуру
21.11.08
✎
11:21
|
(44) Гыы.. в ДБФ нет _1SJOURN, и Closed=4 - док помечен на удаление..
|
|||
46
Злой Бобр
21.11.08
✎
11:23
|
(45) Ну да, ступил. Отвык я от ДБФ.
|
|||
47
тишина
21.11.08
✎
11:26
|
(44) не поняла, это ты к чему? какая разница в данном случае, если из closed можно достать признак проведения, значит это можно сделать и в dbf и в скуле? в одном формате получится, разберемся и с другим, так что попрошу не умничать
|
|||
48
Ёпрст
гуру
21.11.08
✎
11:36
|
(47) если что, вам нужны значения 1,3,5 - это когда документик проведён ...
можно тупо условие воткнуть, как в (19)+(21) ... ЗЫ: 3 - это когда док проведен по компоненте Расчет, если что... если не стоит, то достаточно 1 и 5 |
|||
49
тишина
21.11.08
✎
12:00
|
кстати о птичках, локальная dbf-база 1С работает быстрее, так что всяко удобнее для тестов
сделала выборку проведенных доков в скуль базе, получилось меньше непреведенных, чем при выборке обычной обработкой 1С с проверкой на пометку удаления на 10 фтучек, в чём может быть загвоздка? кроме того, опять попадают номера и проведенных и непроведенных элементов |
|||
50
Ёпрст
гуру
21.11.08
✎
12:04
|
(49) Проверку на пометку удаления ? Ты прикалываешься что ли ? :))
Документ может быть просто не проведенным быть... без пометки на удаление. |
|||
51
Ёпрст
гуру
21.11.08
✎
12:05
|
И это... "опять попадают номера и проведенных и непроведенных элементов"
мот документов ? А периодичность нумера какая ? Год поди ? А смотришь вообще весь журнал ? :))) |
|||
52
Ёпрст
гуру
21.11.08
✎
12:06
|
+51 дык там просто документы с одним нумером из разных периодов... в одном они проведенные, в другом - мот и нет...
|
|||
53
тишина
21.11.08
✎
12:07
|
"Closed=4 - док помечен на удаление.."
неполучится ли, что выборка в запросе _1SJOURN.CLOSED & 1 = 1 даст доки, которые непроведены и НЕ помечены на удаление? я и проверяю это условие в обычной обработке |
|||
54
тишина
21.11.08
✎
12:09
|
(51)блин, вот тут точно затупила, осень вообще моцк не соображает о_О
|
|||
55
ВторНик
21.11.08
✎
12:10
|
(53)смотрю на ДБФ: Closed=4 - док не проведен, ISMARK=* - помечен на удаление
|
|||
56
Ёпрст
гуру
21.11.08
✎
12:12
|
(53) Блин...
Если документ ПРОВЕДЕН, то он по определению не может быть помеченным на удаление ! Фирштейн ? :)) Когда документ проведен поле Closed может принимать 3 значения : 1,3,5 всё собственно . |
|||
57
тишина
21.11.08
✎
12:21
|
так я это делаю при выборке НЕПРОВЕДЕННЫХ!
|
|||
58
тишина
21.11.08
✎
12:21
|
ФИРШТЕЙН?
|
|||
59
тишина
21.11.08
✎
12:24
|
ладно, всё, в общем работает
"Когда документ проведен поле Closed может принимать 3 значения : 1,3,5 " вот это сразу надо было говорить, а то развели бадягу |
|||
60
Ёпрст
гуру
21.11.08
✎
12:25
|
(58) убила...
Вам нужны не проведенные доки что ли ? Тогда <>1,3,5 + смотреть пометку удаления ismark, не забывая что в дбф и в скуле исмарк по разному работает. |
|||
61
тишина
21.11.08
✎
12:33
|
да мне вообще они не нужны, я просто хотела определенности добиться, в планируемом проекте признак проведения будет сниматься хранимой процедурой + удаление проводок
чем я тебя убила? я 2,5 года сижу на 1С, думаешь, без тебя не разберусь как мне брать проведенные и непроведенные? я понимаю, что к пользователям заочно относишься, как к абсолютным идиотам - это нормально, я-то здесь при чём? с ismark всё давно понятно |
|||
62
тишина
21.11.08
✎
12:36
|
в (49) пропала частичка "не" 8) от того и путаница
|
|||
63
Ёпрст
гуру
21.11.08
✎
12:36
|
(61) Гы... чего так агрессивно то ? Никто тут на вас не прессует.
|
|||
64
тишина
21.11.08
✎
12:40
|
где агрессивно-то?
|
|||
65
Ёпрст
гуру
21.11.08
✎
12:50
|
(64) "к пользователям заочно относишься, как к абсолютным идиотам"
с чего вдруг, такое заведомо ложное утверждение ? ... |
|||
66
тишина
21.11.08
✎
14:49
|
это предположение, основанное на выводах, сделанных из твоего разговора: "фирштейн, убила.." и прочее
|
|||
67
Ёпрст
гуру
21.11.08
✎
15:12
|
(66) Ё... ну нельзя же ко всему так относится серьёзно, тем более, что там везде смайл стоит..
|
|||
68
тишина
21.11.08
✎
16:33
|
не везде, к тому же смайл не освобождает от ответственности
|
|||
69
Ёпрст
гуру
21.11.08
✎
16:35
|
(68) В пятницу, и такая сурьёзная ? :)
|
|||
70
Sj
21.11.08
✎
16:57
|
Ёпрст3 без наездов все объяснял, у тебя в (61) крыша просто поехала.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |