Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.78/103: Рейтинг темы: голосов - 103, средняя оценка - 4.78
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323

Ошибка: TypeError: unsupported operand type(s) for >>: 'str' and 'int'

17.09.2019, 21:11. Показов 22145. Ответов 23
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
class Note():
    def __init__(self, note, found=False):
        self.note = note
        self.found = found
        self.pith = ["до", "ре", "ми", "фа", "соль", "ля", "си"]
        self.pithT = ["до-о", "ре-э", "ми-и", "фа-а", "со-оль", "ля-а", "си-и"]
 
    def __rshift__(self, other):
        if other + self.pith.index(self.note) >= len(self.pith):
            return self.pithT[
                (other + self.pith.index(self.note)) % len(self.pith)] if self.found else self.pith[
                (other + self.pith.index(self.note)) % len(self.pith)]
        return self.pithT[other + self.pith.index(self.note)] if self.found else self.pith[
            other + self.pith.index(self.note)]
 
    
N = 7
PITCHES = ["до", "ре", "ми", "фа", "соль", "ля", "си"]
LONG_PITCHES = ["до-о", "ре-э", "ми-и", "фа-а", "со-оль", "ля-а", "си-и"]
INTERVALS = ["прима", "секунда", "терция", "кварта", "квинта", "секста", "септима"]
 
do = Note("до", True)
re = Note("ре", True)
mi = Note("ми", True)
fa = Note("фа", True)
sol = Note("соль", True)
la = Note("ля", True)
si = Note("си", True)
 
r1 = do >> 1
print(r1)
m1 = r1 >> 1
print(m1)
f1 = m1 >> 1
print(f1)
print()
C++
1
2
3
  File "C:/Users/Руслан/PycharmProjects/untitled1/123.py", line 97, in <module>
    f1 = m1 >> 1
TypeError: unsupported operand type(s) for >>: 'str' and 'int'
Пишет что ошибка, никак не могу понять, в чём она заключается, суть то понял, а как её отловить?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.09.2019, 21:11
Ответы с готовыми решениями:

TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
def F(n): if n &gt; 2: return G(n-2) def G(n): if n &gt; 1: return F(n - 1) + n print(F(8))

TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'
def task23(start, end): if start &gt; end and start == 17: return 0 if start == end: return 1 if start &lt;...

TypeError: unsupported operand type(s) for //: 'NoneType' and 'int'
Код полностью не готов т.к не могу починить ошибку import numpy as np class GiftSet: def __init__(self, *data): ...

23
 Аватар для Semen-Semenich
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,310
17.09.2019, 21:52
Цитата Сообщение от CyberGame Посмотреть сообщение
в чём она заключается, суть то понял, а как её отловить
наверно плохо поняли потому как вам явно указали что нельзя сравнивать число и строку и даже указано на строку line 97, in <module> а вот что там одному вам известно
0
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
18.09.2019, 14:20  [ТС]
Semen-Semenich, 97 строчка, это срока m1 = r1 >> 1, но в методе -
Python
1
2
3
4
5
6
7
def __rshift__(self, other):
        if other + self.pith.index(self.note) >= len(self.pith):
            return self.pithT[
                (other + self.pith.index(self.note)) % len(self.pith)] if self.found else self.pith[
                (other + self.pith.index(self.note)) % len(self.pith)]
        return self.pithT[other + self.pith.index(self.note)] if self.found else self.pith[
            other + self.pith.index(self.note)]
Всё нормально, я не сравниваю строку и числом.
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
18.09.2019, 14:31
CyberGame, а как вы получаете эту ошибку? У меня не возникает при запуске вашего кода.
0
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
18.09.2019, 14:54  [ТС]
Arsegg,
Кхм, возможно нужно скинуть весь код!
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
class Note():
    def __init__(self, note, found=False):
        self.note = note
        self.found = found
        self.pith = ["до", "ре", "ми", "фа", "соль", "ля", "си"]
        self.pithT = ["до-о", "ре-э", "ми-и", "фа-а", "со-оль", "ля-а", "си-и"]
 
    def __eq__(self, other):
        if self.note == other:
            return True
        return False
 
    def __lt__(self, other):
        if self.pith.index(self.note) < other:
            return True
        return False
 
    def __gt__(self, other):
        if self.pith.index(self.note) > other:
            return True
        return False
 
    def __le__(self, other):
        if self.pith.index(self.note) <= other:
            return True
        return False
 
    def __ge__(self, other):
        if self.pith.index(self.note) >= other:
            return True
        return False
 
    def __lshift__(self, other):
        if (self.pith.index(self.note) - other) * -1 >= len(self.pith):
            return self.pithT[
                (self.pith.index(self.note) - other) * -1 % len(self.pith) * -1] if self.found else \
                self.pith[(self.pith.index(self.note) - other) * -1 % len(self.pith) * -1]
        return self.pithT[self.pith.index(self.note) - other] if self.found else self.pith[
            self.pith.index(self.note) - other]
 
    def __rshift__(self, other):
        if other + self.pith.index(self.note) >= len(self.pith):
            return self.pithT[
                (other + self.pith.index(self.note)) % len(self.pith)] if self.found else self.pith[
                (other + self.pith.index(self.note)) % len(self.pith)]
        return self.pithT[other + self.pith.index(self.note)] if self.found else self.pith[
            other + self.pith.index(self.note)]
 
    def get_interval(self, other):
        if ((self.pith.index(self.note) == 0 and self.pith.index(other) == 6) or (self.pith.index(
                self.note) == 6 and self.pith.index(other) == 0)):
            return 'септима'
        elif self.pith.index(self.note) == self.pith.index(other):
            return 'прима'
        elif self.pith.index(self.note) > self.pith.index(other):
            if self.pith.index(self.note) - self.pith.index(other) == 1:
                return 'секунда'
            elif self.pith.index(self.note) - self.pith.index(other) == 2:
                return 'терция'
            elif self.pith.index(self.note) - self.pith.index(other) == 3:
                return 'кварта'
            elif self.pith.index(self.note) - self.pith.index(other) == 4:
                return 'квинта'
            elif self.pith.index(self.note) - self.pith.index(other) == 5:
                return 'секста'
 
        elif self.pith.index(self.note) < self.pith.index(other):
            if self.pith.index(other) - self.pith.index(self.note) == 1:
                return 'секунда'
            elif self.pith.index(other) - self.pith.index(self.note) == 2:
                return 'терция'
            elif self.pith.index(other) - self.pith.index(self.note) == 3:
                return 'кварта'
            elif self.pith.index(other) - self.pith.index(self.note) == 4:
                return 'квинта'
            elif self.pith.index(other) - self.pith.index(self.note) == 5:
                return 'секста'
 
 
N = 7
PITCHES = ["до", "ре", "ми", "фа", "соль", "ля", "си"]
LONG_PITCHES = ["до-о", "ре-э", "ми-и", "фа-а", "со-оль", "ля-а", "си-и"]
INTERVALS = ["прима", "секунда", "терция", "кварта", "квинта", "секста", "септима"]
 
do = Note("до", True)
re = Note("ре", True)
mi = Note("ми", True)
fa = Note("фа", True)
sol = Note("соль", True)
la = Note("ля", True)
si = Note("си", True)
 
r1 = do >> 1
print(r1)
m1 = r1 >> 1
print(m1)
f1 = m1 >> 1
print(f1)
print()
 
sl1 = re >> 1 >> 2
print(sl1)
print()
 
d2 = si >> 1
m2 = d2 >> 2
print(m2)
mm2 = m2 >> 7
print(mm2)
r2 = mm2 >> 55
print(r2)
print()
 
nf = si << 3
print(nf)
nr = nf << 2
print(nr)
print()
 
nl2 = re << 3
print(nl2)
nsol = do << 73
print(nsol)
nm2 = mi << 21
print(nm2)
print()
 
nr = si << 2 << 1 << 2
print(nr)
nf = nr << 2 << 4 << 6
print(nf)
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
18.09.2019, 15:33
Лучший ответ Сообщение было отмечено CyberGame как решение

Решение

CyberGame, вся проблема заключается в том, что вы возвращаете строку, а не объект типа Note в __rshift__
У меня PyCharm тьму Warning'ов выдал (один из):
Python
1
2
r1 = do >> 1
m1 = r1 >> 1
Добавлено через 15 секунд
CyberGame, вся проблема заключается в том, что вы возвращаете строку, а не объект типа Note в __rshift__
У меня PyCharm тьму Warning'ов выдал (один из):
Python
1
2
r1 = do >> 1
m1 = r1 >> 1
1
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
18.09.2019, 15:40
CyberGame, Semen-Semenich,
это не сравнение а побитовый сдвиг, который переопределен в классе Нота
код не простой, но как я понимаю сдвиг (__rshift) в Ноте возвращает строку
потому и ругается, что
Цитата Сообщение от CyberGame Посмотреть сообщение
f1 = m1 >> 1
сдвиг применяется к строке

Добавлено через 17 секунд
CyberGame, Semen-Semenich,
это не сравнение а побитовый сдвиг, который переопределен в классе Нота
код не простой, но как я понимаю сдвиг (__rshift) в Ноте возвращает строку
потому и ругается, что
Цитата Сообщение от CyberGame Посмотреть сообщение
f1 = m1 >> 1
сдвиг применяется к строке
0
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
18.09.2019, 18:57  [ТС]
Welemir1, Arsegg, я вот не понимаю.
По сути, r1 возвращает объект. А дальше, у меня всё по методу правильно.
Python
1
def __rshift__(self, other):
На входной параметр приходит объект. И дальше он с ним работает, вообще не догоняю в чём проблема.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
18.09.2019, 19:20
Цитата Сообщение от CyberGame Посмотреть сообщение
вообще не догоняю в чём проблема.
рано ты за сдвиги взялся, зачем они тебе вообще?

попробую прямо по пунктам:
1) когда ты делаешь сдвиг для объекта Ноты, то возвращаешь не Ноту, а строку
2) потом ты пытаешься применить сдвиг для полученного объекта, но это не нота а строка(пункт 1)
3) у строки нет метода сдвига - исключение!
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
18.09.2019, 19:22
CyberGame, вам необходимо для бинарных операторов возвращать объект типа Note, чтобы вы могли использовать конструкцию Note(...) >> 1 >> 2 >> 3. Если вы возвращаете объект типа str, для которого не переопределен оператор >>, вы будете получать ошибку (а вы не можете средствами Python переопределить операторы со стандартными типами данных). Например, выражение: "Hello, World!" >> 1 - не имеет смысла.
P.S. почитайте: https://pythonworld.ru/osnovy/... torov.html

Добавлено через 42 секунды
А вообще перегрузка операторов - зло, недаром в яве их нет.
0
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
18.09.2019, 19:26  [ТС]
Welemir1,
рано ты за сдвиги взялся, зачем они тебе вообще?
Да я с Яндекс.Лицея, у меня задание, при выполнение вот такая проблема)
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
18.09.2019, 19:31
CyberGame, было бы полное условие, а так это "гадание на кофейной гуще".
0
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
18.09.2019, 21:09  [ТС]
Arsegg, у меня появилась ошибка, я скинул всё что с ней связано, или условие тоже обязательно?

Добавим в класс Note сравнение нот. Сравнивать будем по высоте, без учёта длительности, причём будем считать большей ту ноту, чей тон выше (частота колебаний больше).

Также добавим возможность транспонирования звука (переноса выше или ниже) с помощью сдвигов >> вверх и << вниз на гарантированно целое положительное значение. Например, если «до» сдвинуть вправо на три тона ( >> 3), получится «фа». Сдвиг должен работать циклически: если сдвинуть ту же «до» на тон вниз ( << 1), должна получиться «си». А если сдвинуть «си» на один тон выше ( >> 1) — опять «до».

И ещё один новый метод — get_interval, позволяющий получить значение интервала между двумя нотами: «прима», «секунда», «терция», «кварта», «квинта», «секста» или «септима», где «прима» — интервал между двумя равными по тону нотами, а «септима» — максимальный доступный на нашем ксилофоне интервал — между «до» и «си».

В решении нужно объявить и можно использовать следующие константы (тестирующая система будет импортировать их из вашего кода):

N = 7
PITCHES = ["до", "ре", "ми", "фа", "соль", "ля", "си"]
LONG_PITCHES = ["до-о", "ре-э", "ми-и", "фа-а", "со-оль", "ля-а", "си-и"]
INTERVALS = ["прима", "секунда", "терция", "кварта", "квинта", "секста", "септима"]
Ну вот на всякий случай)
0
3582 / 2182 / 571
Регистрация: 02.09.2015
Сообщений: 5,510
18.09.2019, 22:06
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from enum import IntEnum
 
N = 7
 
 
class Note(IntEnum):
    DO = 0
    RE = 1
    MI = 2
    FA = 3
    SOL = 4
    LA = 5
    SI = 6
 
    def __lshift__(self, other):
        return Note((self.value - other) % N)
 
    def __rshift__(self, other):
        return Note((self.value + other) % N)
 
 
do = Note.DO
re = Note.RE
mi = Note.MI
fa = Note.FA
sol = Note.SOL
la = Note.LA
si = Note.SI
IntEnum "из коробки" поддерживает все операции с интами, т.е. сравнение >, <, = и т.п. Реализовать get_interval, я думаю, для вас не составит труда.
P.S. IntEnum.value.
0
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
19.09.2019, 14:18  [ТС]
Arsegg, Welemir1,
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
class Note():
    def __init__(self, note, found=False):
        self.note = note
        self.found = found
        self.pith = ["до", "ре", "ми", "фа", "соль", "ля", "си"]
        self.pithT = ["до-о", "ре-э", "ми-и", "фа-а", "со-оль", "ля-а", "си-и"]
        if self.found:
            self.TaF = self.pithT
        else:
            self.TaF = self.pith
 
    def __eq__(self, other):
        if self.note == other:
            return True
        return False
 
    def __lt__(self, other):
        if self.pith.index(self.note) < other:
            return True
        return False
 
    def __gt__(self, other):
        if self.pith.index(self.note) > other:
            return True
        return False
 
    def __le__(self, other):
        if self.pith.index(self.note) <= other:
            return True
        return False
 
    def __ge__(self, other):
        if self.pith.index(self.note) >= other:
            return True
        return False
 
    def __lshift__(self, other):
        self.note = self.pith[self.pith.index(self.note)] if self.note in self.TaF else self.pithT[
            self.pithT.index(self.note)]
        if (self.TaF.index(self.note) - other) * -1 >= len(self.TaF):
            return self.TaF[
                (self.TaF.index(self.note) - other) * -1 % len(self.TaF) * -1]
        return self.TaF[self.TaF.index(self.note) - other]
 
    def __rshift__(self, other):
        if self.note in self.Taf:
            self.note = self.pith[self.pith.index(self.note)]
        else:
            self.pithT[self.pithT.index(self.note)]
        if other + self.TaF.index(self.note) >= len(self.TaF):
            return Note(self.TaF[
                            (other + self.TaF.index(self.note)) % len(self.TaF)])
        return Note(self.TaF[other + self.TaF.index(self.note)])
 
 
def get_interval(self, other):
    if ((self.pith.index(self.note) == 0 and self.pith.index(other) == 6) or (self.pith.index(
            self.note) == 6 and self.pith.index(other) == 0)):
        return 'септима'
    elif self.pith.index(self.note) == self.pith.index(other):
        return 'прима'
    elif self.pith.index(self.note) > self.pith.index(other):
        if self.pith.index(self.note) - self.pith.index(other) == 1:
            return 'секунда'
        elif self.pith.index(self.note) - self.pith.index(other) == 2:
            return 'терция'
        elif self.pith.index(self.note) - self.pith.index(other) == 3:
            return 'кварта'
        elif self.pith.index(self.note) - self.pith.index(other) == 4:
            return 'квинта'
        elif self.pith.index(self.note) - self.pith.index(other) == 5:
            return 'секста'
 
    elif self.pith.index(self.note) < self.pith.index(other):
        if self.pith.index(other) - self.pith.index(self.note) == 1:
            return 'секунда'
        elif self.pith.index(other) - self.pith.index(self.note) == 2:
            return 'терция'
        elif self.pith.index(other) - self.pith.index(self.note) == 3:
            return 'кварта'
        elif self.pith.index(other) - self.pith.index(self.note) == 4:
            return 'квинта'
        elif self.pith.index(other) - self.pith.index(self.note) == 5:
            return 'секста'
 
 
N = 7
PITCHES = ["до", "ре", "ми", "фа", "соль", "ля", "си"]
LONG_PITCHES = ["до-о", "ре-э", "ми-и", "фа-а", "со-оль", "ля-а", "си-и"]
INTERVALS = ["прима", "секунда", "терция", "кварта", "квинта", "секста", "септима"]
 
do = Note("до", True)
re = Note("ре", True)
mi = Note("ми", True)
fa = Note("фа", True)
sol = Note("соль", True)
la = Note("ля", True)
si = Note("си", True)
 
r1 = do >> 1
print(r1)
m1 = r1 >> 1
print(m1)
f1 = m1 >> 1
print(f1)
print()
 
sl1 = re >> 1 >> 2
print(sl1)
print()
 
d2 = si >> 1
m2 = d2 >> 2
print(m2)
mm2 = m2 >> 7
print(mm2)
r2 = mm2 >> 55
print(r2)
print()
 
nf = si << 3
print(nf)
nr = nf << 2
print(nr)
print()
 
nl2 = re << 3
print(nl2)
nsol = do << 73
print(nsol)
nm2 = mi << 21
print(nm2)
print()
 
nr = si << 2 << 1 << 2
print(nr)
nf = nr << 2 << 4 << 6
print(nf)
Ребят, столкнулся с еще одной проблемой.
C++
1
2
3
4
5
  File "C:/Users/Руслан/PycharmProjects/untitled1/123.py", line 100, in <module>
    r1 = do >> 1
  File "C:/Users/Руслан/PycharmProjects/untitled1/123.py", line 46, in __rshift__
    if self.note in self.Taf:
AttributeError: 'Note' object has no attribute 'Taf'
0
 Аватар для Damenikx
955 / 341 / 114
Регистрация: 04.08.2018
Сообщений: 2,533
19.09.2019, 14:28
Цитата Сообщение от CyberGame Посмотреть сообщение
AttributeError: 'Note' object has no attribute 'Taf'
Объект "Note" не содержит атрибута "Taf"
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
19.09.2019, 14:29
Цитата Сообщение от CyberGame Посмотреть сообщение
self.TaF
Цитата Сообщение от CyberGame Посмотреть сообщение
if self.note in self.Taf:
разницу видишь(подсказка -смотри на последнюю букву)?

Руслан, бросай ты этот лицей, вселенная дает знаки...Если уж ты не можешь просто исключение прочитатьпо твоему собственному коду, и не смотришь на то, что тебе Пичарм говорит (а она по-любому выделяет цветом такой косяк)...
0
 Аватар для Semen-Semenich
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,310
19.09.2019, 14:31
CyberGame, внимательней
if self.found:
self.TaF = self.pithT
else:
self.TaF = self.pith

и

def __rshift__(self, other):
if self.note in self.Taf:
self.note = self.pith[self.pith.index(self.note)]
0
208 / 95 / 15
Регистрация: 27.07.2018
Сообщений: 323
19.09.2019, 15:58  [ТС]
Welemir1, да нет, я проделал много работы, и без яндекса я бы не добился того, чего добился сейчас.
0
Автоматизируй это!
Эксперт Python
 Аватар для Welemir1
7392 / 4819 / 1246
Регистрация: 30.03.2015
Сообщений: 13,694
Записей в блоге: 29
19.09.2019, 16:14
CyberGame, чего например добился?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.09.2019, 16:14
Помогаю со студенческими работами здесь

TypeError: unsupported operand type(s) for +: 'int' and 'list'
Привет, пытаюсь написать бота vk с помощью библиотеки vk_api Хочу сделать так чтобы сообщение отправлялось в 2 беседы сразу, в peer_id...

TypeError: unsupported operand type(s) for -: 'int' and 'list'
Подскажите пожалуйста, что нужно сделать, что бы исправить данную ошибку import cv2 from cvzone.HandTrackingModule import...

TypeError: unsupported operand type(s) for *: 'int' and 'type'
Подскажите что за ошибка? TypeError: unsupported operand type(s) for *: 'int' and 'type' import math a=float(input(&quot;Введите...

Как исправить ошибку unsupported operand type(s) for -: 'str' and 'int'
Я начала решать задачу &quot;Клавиатура&quot; из сириуса, если что, но это не имеет значения. Я написала пока что половину решения и проверяла эту...

TypeError: unsupported operand type(s)
class Person: def print_info(self, n): for i in range(n): print(f'Name: {self.name}, Surname: {self.surname}, Place of birth:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru