Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.87/15: Рейтинг темы: голосов - 15, средняя оценка - 4.87
4 / 4 / 0
Регистрация: 10.07.2017
Сообщений: 52

Разные ComboBox в одной колонке DataGridView?

08.06.2020, 19:44. Показов 3467. Ответов 22

Студворк — интернет-сервис помощи студентам
Здравствуйте.

Возможно ли, в зависимости от условия, в разных строках столбца со списками выводить, например:
либо {"0", "2", "3", "4"}, либо {"a", "b"},
либо сделать единый список для всех, {"0", "2", "3", "4", "a", "b"}, но фильтровать его для разных строк по условию?
Или как-то еще?..

Сейчас это реализовано в виде редактора строки на отдельной форме,
где есть 2 списка, один из которых блокируется в зависимости от условия строки.
Хотелось бы отказаться от этой формы.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.06.2020, 19:44
Ответы с готовыми решениями:

VB.Net Datagridview нет доступа к данным в одной колонке
Мне надо заполнить Datagridview, данные в котором могут быть отредактированы пользователями. Программка простая: SqlStatement =...

DataGridView. Подсчет всех значений в одной колонке.Вывод в Текст бокс
Всем доброго времени суток. В общем есть главная форма и еще 2 второстепенные. Из второстепенных заполняется 1 БД (Access) с 4...

Разные стили в одной колонке вьюхи
Можно ли в одной колонеке вьюшки часть текста выделить жирным? Колонка содержит ФИО+Статус, вот этот статус и нужно сделать жирным, а в...

22
2287 / 1603 / 400
Регистрация: 26.06.2017
Сообщений: 4,754
Записей в блоге: 1
08.06.2020, 19:59
Ну, а почему бы и нет.
VB.NET
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
Private Sub DataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) _
    Handles DataGridView1.EditingControlShowing
        Dim DGV As DataGridView = CType(sender, DataGridView)
 
        Dim autoText As ComboBox = TryCast(e.Control, ComboBox)
 
        If autoText IsNot Nothing Then
            Dim DataCollection As New AutoCompleteStringCollection()
            Dim selectRow As Integer = DGV.CurrentCell.RowIndex
 
            addItems(DataCollection, selectRow)
 
            autoText.AutoCompleteMode = AutoCompleteMode.SuggestAppend
            autoText.AutoCompleteSource = AutoCompleteSource.CustomSource
            autoText.AutoCompleteCustomSource = DataCollection
        End If
    End Sub
 
Public Sub addItems(ByVal col As AutoCompleteStringCollection, ByVal selectedRow As Integer)
    If selectedRow = 1 Then
         col.AddRange({"0", "2", "3", "4"})
    Else
         col.AddRange({"a", "b"})
    End If
End Sub
0
4 / 4 / 0
Регистрация: 10.07.2017
Сообщений: 52
08.06.2020, 22:22  [ТС]
Uswer, спасибо за быстрый отклик!
Красиво, но чего-то не работает.

В предложенном варианте, на 14-й строке:
VB.NET
1
autoText.AutoCompleteSource = AutoCompleteSource.CustomSource
выдает исключение:
"Если для DropDownStyle задано ComboBoxStyle.DropDownList, а для AutoCompleteMode не задано AutoCompleteMode.None, может использоваться только значение AutoCompleteSource.ListItems"

Пробовал разные комбинации с AutoComplete...
в том числе .DropDownStyle менял на ComboBoxStyle.DropDown (по умолчанию он DropDownList)
исключение исчезает, но список не меняется - либо остается тем же, если заранее инициализировался, либо пустой.

Проверял в отладчике - сам код построчно отрабатывает нормально, но безрезультатно.

Фантазия истощилась, а знаний не хватает - куда копать...

Добавлено через 36 минут
И еще хотелось бы заранее инициализировать видимое значение каждого списка на этапе подготовки DGV.

Добавлено через 10 минут
Вроде этого:

VB.NET
1
2
3
4
5
6
7
8
9
Sub FormStart_Load
...
            Dim cbxColumn As New DataGridViewComboBoxColumn()
            With cbxColumn
                .HeaderText = "Test cbx"
                .FlatStyle = FlatStyle.Flat
.???.
            End With
            DGV.Columns.Add(cbxColumn)
0
2287 / 1603 / 400
Регистрация: 26.06.2017
Сообщений: 4,754
Записей в блоге: 1
09.06.2020, 00:40
Извини поторопился, тот код больше для TextBox-а подходит.
VB.NET
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
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim cmbboxCol As New DataGridViewComboBoxColumn
        With cmbboxCol
            .HeaderText = "ComboBoxes"
            .Name = "ComboBoxes"
            .DataPropertyName = "cmbBx"
            .FlatStyle = FlatStyle.Flat
            .Items.AddRange("0", "2", "3", "4") 'значения по дефолту
        End With
 
        DataGridView1.Columns.Add(cmbboxCol)
End Sub
 
Private Sub DataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) _
    Handles DataGridView1.EditingControlShowing
        Dim DGV As DataGridView = CType(sender, DataGridView)
 
        Dim autoText As ComboBox = TryCast(e.Control, ComboBox)
 
        If autoText IsNot Nothing Then
            Dim selectRow As Integer = DGV.CurrentCell.RowIndex
 
            autoText.Items.Clear()
            autoText.Items.AddRange(addItems(selectRow))
        End If
End Sub
 
Public Function addItems(ByVal selectedRow As Integer) As String()
        If selectedRow = 1 Then
            Dim temp() As String = {"0", "2", "3", "4"}
            Return temp
        Else
            Dim temp() As String = {"a", "b"}
            Return temp
        End If
End Function
При изменении значения вылетает ошибка форматирования. Соображалка уже устала и не хочет дать ответ на решение этой ошибки.
0
Модератор
Эксперт .NET
 Аватар для Yury Komar
4359 / 3429 / 512
Регистрация: 27.01.2014
Сообщений: 6,258
09.06.2020, 03:39
SSL-13, а какое должно быть условие изменения списка ComboBox, напрммер? И где набор строк для ComboBox должен храниться для каждой строки?
0
4 / 4 / 0
Регистрация: 10.07.2017
Сообщений: 52
09.06.2020, 04:07  [ТС]
Yury Komar,
Цитата Сообщение от Yury Komar Посмотреть сообщение
какое должно быть условие изменения списка ComboBox
Проверка определенной ячейки этой же, (выбранной), строки на наличие в ней некоторых символов.

Например: число или дата...
В 1-м случае нужно дать пользователю выбрать разрядность,
(причем, желательно с запретом больше 0 для целых),
во втором - прямое или реверсное отображение даты.

После выбора нового значения в списке, на его основе предполагается изменение значений 3-ей, служебной колонки.

Пример Uswer,
VB.NET
1
If selectedRow = 1 Then
на данном этапе вполне устраивает.

Цитата Сообщение от Yury Komar Посмотреть сообщение
где набор строк для ComboBox должен храниться для каждой строки?
Как вариант, из того же примера выше, вполне устраивает в виде массива(ов), локальных или глобальных.
0
Модератор
Эксперт .NET
 Аватар для Yury Komar
4359 / 3429 / 512
Регистрация: 27.01.2014
Сообщений: 6,258
09.06.2020, 04:08
Понял.
0
4 / 4 / 0
Регистрация: 10.07.2017
Сообщений: 52
09.06.2020, 05:25  [ТС]
Цитата Сообщение от Uswer Посмотреть сообщение
тот код больше для TextBox-а подходит
а... ясно.

Цитата Сообщение от Uswer Посмотреть сообщение
При изменении значения вылетает ошибка форматирования.
В плане наводки, может поможет?
У меня такая же ошибка была, когда в список передавал не строковые, а числовые значения.
Правда тут что-то другое, но видимо тоже связано со способом инициализации списка.

И еще - в предложенном примере происходит реинициализация одного и того же списка.
При таком подходе вряд ли получится заранее отобразить значения из разных списков, т.к. соответствующие проверки должны быть проведены на уровне первичной инициализации DGV.
ДА и в дальнейшем - в разных строках должны отображаться значения из разных списков, (по соответствующему условию).

Например, если задаем изначальный дефолт:
VB.NET
1
.Items.AddRange("0", "2", "3", "4") 'значения по дефолту
тогда после полного первичного заполнения DGV нужен еще отдельный цикл по исправлению ячеек, которые не соответствуют дефолтному условию.
Правда это прокатит только в том случае, если DGV все же допускает существование 2-х списков,
или отображение некоторых значений, не соответствующих текущему... возможно из-за этого и ошибка?

PS Вот еще не пойму, как обратиться к Combobox в DGV не в событии как в примере, (из его аргументов), а на уровне любой процедуры:
VB.NET
1
Dim autoText As ComboBox = ???
0
Модератор
Эксперт .NET
 Аватар для Yury Komar
4359 / 3429 / 512
Регистрация: 27.01.2014
Сообщений: 6,258
09.06.2020, 06:24
SSL-13, а может быть не использовать тип колонки ComboBox? А взять обычный TextBoxColumn? А при вызове EditingControl перехватывать это и на месте ячейки показывать обычный ComboBox со всем необходимым? Таким образом в таком комбобоксе может быть все что душе вашей угодно.
0
4 / 4 / 0
Регистрация: 10.07.2017
Сообщений: 52
09.06.2020, 06:50  [ТС]
Yury Komar, ну если ответ на основной вопрос отрицательный, согласен, - идея здравая.

Перехват с TextBoxColumn видимо на уровне DGV.CellBeginEdit с подсовыванием программного ComboBox...
(или перетащить готовый скрытый?)
Примерчик бы, или несколько строк кода - как получить координаты и размеры .CurrentCell?
Чтоб долго не рыться в справочниках и тестах... ))

PS Нынче могу отъехать на неск. дней - возможна задержка с ответами.
0
2287 / 1603 / 400
Регистрация: 26.06.2017
Сообщений: 4,754
Записей в блоге: 1
09.06.2020, 14:44
SSL-13, ну и задали Вы задачку!
Заработало только такое решение
Кликните здесь для просмотра всего текста
VB.NET
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
    Enum cmbBxValues
        a
        b
        f1 = 1
        f2 = 3
        f3 = 4
    End Enum
 
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Try
            DataGridView1.AutoGenerateColumns = False
 
            Dim cmbBxCol As New DataGridViewComboBoxColumn
            With cmbBxCol
                .HeaderText = "ComboBoxes"
                .Name = "ComboBoxes"
                .FlatStyle = FlatStyle.Flat
                Dim cell As DataGridViewComboBoxCell = New DataGridViewComboBoxCell
                cell.Style.BackColor = Color.Wheat 'для наглядности
                cell.ValueType = GetType(System.String)
                cell.Items.AddRange([Enum].GetNames(GetType(cmbBxValues)))
                .CellTemplate = cell
            End With
 
            Me.DataGridView1.Columns.Insert(0, cmbBxCol)
            
            'инициализируем Грид, т.е. создаём строки
            Dim nRow As DataGridViewRow
            For i = 0 To 2
                nRow = New DataGridViewRow
                Me.DataGridView1.Rows.Add(nRow)
                Dim cell As DataGridViewComboBoxCell = nRow.Cells(cmbBxCol.Index)
                Me.DataGridView1.Rows(i).Cells(cmbBxCol.Index).Value = cell.Items(0)
            Next
        Catch ex As Exception
            MsgBox(ex.Message)
            Me.Close()
        End Try
    End Sub
 
    Private Sub DataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) Handles DataGridView1.EditingControlShowing
        Dim DGV As DataGridView = CType(sender, DataGridView)
        Dim editCtrl As DataGridViewComboBoxEditingControl = TryCast(e.Control, DataGridViewComboBoxEditingControl)
 
        If editCtrl IsNot Nothing Then
            editItems(editCtrl, DGV.CurrentRow.Index)
        End If
    End Sub
 
    Private Sub editItems(ByVal editControl As DataGridViewComboBoxEditingControl, ByVal selectRow As Integer)
        'удаляем лишние значения по условию
        If selectRow = 1 Then
            editControl.Items.RemoveAt(1)
            editControl.Items.RemoveAt(0)
        Else
            editControl.Items.RemoveAt(4)
            editControl.Items.RemoveAt(3)
            editControl.Items.RemoveAt(2)
        End If
    End Sub

При создании колонки Грида добавляем все возможные значения, которые в ней могут быть размещены, а затем при входе в редактирование просто удаляем лишнее. Обратите внимание, что тип всех значений должен быть один. Если к Гриду привязана таблица, то типы столбца таблицы, со значениями для колонки DataGridViewComboBoxColumn, и значений самой колонки должны совпадать. Кроме того, для колонки DataGridViewComboBoxColumn необходимо задать свойство DataPropertyName = имени столбца таблицы.

Добавлено через 25 минут
Цитата Сообщение от SSL-13 Посмотреть сообщение
не пойму, как обратиться к Combobox в DGV не в событии как в примере, (из его аргументов), а на уровне любой процедуры
VB.NET
1
Dim cell As DataGridViewComboBoxCell = Me.DataGridView1.Rows(i).Cells(cmbBxCol.Index)
необходимо указать соответствующие индексы i и cmbBxCol.Index.
0
4 / 4 / 0
Регистрация: 10.07.2017
Сообщений: 52
09.06.2020, 16:30  [ТС]
Цитата Сообщение от Uswer Посмотреть сообщение
ну и задали Вы задачку!
Я старался. )))
Ну и задачка нетривиальная, + таблица нестандартная = сохраняемая в файл-шаблон... от правил которого трудно отойти:
в одном столбце даты и числа, которые растаскиваются на 3 формата, а последние записываются в служебную колонку:
- Дробные числа, (для них из списка выбирается разрядность),
- Дата/время, (из списка - дата как есть, или реверсная - год впереди)
- Целые или только время (= "").
В последнем случае, если есть такая возможность, было бы идеально прикрутить к отдельной ячейке ComboBox типа .Enable = False
или придется просто удалить все значения из списка кроме "0"...

Цитата Сообщение от Uswer Посмотреть сообщение
Если к Гриду привязана таблица
Необходимости в таблице не нашел, - данные считываются из файла в массив, который изрядно перетряхивается и вставляется в Грид: 10 - 30 строк.

Цитата Сообщение от Uswer Посмотреть сообщение
Заработало только такое решение
Пока тестировал только глазами - вроде оно, круто/хитро наворочено! ))
Вернусь за комп через 2-3 дня, буду разбирать - куча нового для меня, спасибо!
0
2287 / 1603 / 400
Регистрация: 26.06.2017
Сообщений: 4,754
Записей в блоге: 1
09.06.2020, 20:39
Да простит меня модератор, ну не смог остановиться.
Слегка изменённый вариант под нужды ТСа.
Кликните здесь для просмотра всего текста
VB.NET
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
Public Class Form1
 
    Dim cmbBxVal1() As String = {"0,00", "0,000", "0,0000"}
    Dim cmbBxVal2() As String = {"dd.mm.yyyy", "yyyy.mm.dd"}
 
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Dim i As Integer
        Try
            DataGridView1.AutoGenerateColumns = False
 
            Dim cmbBxCol As New DataGridViewComboBoxColumn
            With cmbBxCol
                .HeaderText = "ComboBoxes"
                .Name = "ComboBoxes"
                .FlatStyle = FlatStyle.Flat
                Dim cell As DataGridViewComboBoxCell = New DataGridViewComboBoxCell
                cell.Style.BackColor = Color.Wheat 'для наглядности
                cell.ValueType = GetType(System.String)
                'этот вариант внесения значений работает как с ссылочными типами, так и типами значениями
                For Each item As String In cmbBxVal1
                    cell.Items.Add(item)
                Next
                For Each item As String In cmbBxVal2
                    cell.Items.Add(item)
                Next
                'Этот вариант работает только с ссылочными типами 
                'cell.Items.AddRange(cmbBxVal1)
                'cell.Items.AddRange(cmbBxVal2)
                .CellTemplate = cell
            End With
 
            Me.DataGridView1.Columns.Insert(0, cmbBxCol)
 
            'инициализируем Грид, т.е. создаём строки
            Dim nRow As DataGridViewRow
            For i = 0 To 2
                nRow = New DataGridViewRow
                Me.DataGridView1.Rows.Add(nRow)
                Me.DataGridView1.Rows(i).Cells(cmbBxCol.Index).Value = cmbBxVal1(i)
            Next
 
        Catch ex As Exception
            MsgBox(ex.Message)
            Me.Close()
        End Try
    End Sub
 
    Private Sub DataGridView1_EditingControlShowing(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewEditingControlShowingEventArgs) _
        Handles DataGridView1.EditingControlShowing
        Dim DGV As DataGridView = CType(sender, DataGridView)
        Dim editCtrl As DataGridViewComboBoxEditingControl = TryCast(e.Control, DataGridViewComboBoxEditingControl)
 
        If editCtrl IsNot Nothing Then
            editItems(editCtrl, DGV.CurrentRow.Index)
        End If
    End Sub
 
    Private Sub editItems(ByRef editControl As DataGridViewComboBoxEditingControl, ByVal selectRow As Integer)
        'НЕ удаляем значения, а перезаполняем.
        'Важно чтобы добавляемые значения входили в диапазон CellTemplate
        editControl.Items.Clear()
        If selectRow = 1 Then
            For Each item As String In cmbBxVal1
                editControl.Items.Add(item)
            Next
        Else
            For Each item As String In cmbBxVal2
                editControl.Items.Add(item)
            Next
        End If
    End Sub
 
End Class

Я так и не понял как добиться того, чтобы в ячейку можно было помещать любые значение, а не только те, что определены в CellTemplate. Может кто подскажет?
1
Модератор
Эксперт .NET
 Аватар для Yury Komar
4359 / 3429 / 512
Регистрация: 27.01.2014
Сообщений: 6,258
10.06.2020, 02:46
Uswer,

Не по теме:

а что такого противоправного вы сделали, за что просите прошения? :)

0
2287 / 1603 / 400
Регистрация: 26.06.2017
Сообщений: 4,754
Записей в блоге: 1
10.06.2020, 08:11
Yury Komar, Вы-то не подскажите про
Цитата Сообщение от Uswer Посмотреть сообщение
чтобы в ячейку можно было помещать любые значение, а не только те, что определены в CellTemplate
речь конечно о значениях того же типа, но за пределами диапазона CellTemplate.
0
dive
 Аватар для I can
4961 / 4654 / 845
Регистрация: 13.04.2015
Сообщений: 9,848
10.06.2020, 08:43
Лучший ответ Сообщение было отмечено Yury Komar как решение

Решение

Цитата Сообщение от SSL-13 Посмотреть сообщение
Возможно ли, в зависимости от условия, в разных строках столбца со списками выводить, например:
либо {"0", "2", "3", "4"}, либо {"a", "b"},
Возможно я не совсем понял проблему, но почему бы не сделать как-то так ?

VB.NET
1
2
3
4
5
6
7
8
        Dim s1() As String = {"1", "2"}
        Dim s2() As String = {"3", "4"}
 
        Dim r1 As DataGridViewComboBoxCell = dgv.Rows(1).Cells(1)
        Dim r2 As DataGridViewComboBoxCell = dgv.Rows(2).Cells(1)
 
        r1.Items.AddRange(s1)
        r2.Items.AddRange(s2)
3
dive
 Аватар для I can
4961 / 4654 / 845
Регистрация: 13.04.2015
Сообщений: 9,848
10.06.2020, 09:02
1
2287 / 1603 / 400
Регистрация: 26.06.2017
Сообщений: 4,754
Записей в блоге: 1
10.06.2020, 12:25
Как всё просто оказалось. Спасибо I can. Но я так и не понял, можно ли сделать ввод в ComboBox значений вне диапазона, по аналогии с обычным ComboBox в режиме DropDown, т.е. с вводом значений пользователем.
0
dive
 Аватар для I can
4961 / 4654 / 845
Регистрация: 13.04.2015
Сообщений: 9,848
10.06.2020, 12:33
Цитата Сообщение от Uswer Посмотреть сообщение
можно ли сделать ввод в ComboBox значений вне диапазона
ИМХО, это лишнее Нельзя пользователю давать вводить что попало, ничем хорошим это не заканчивается
1
Модератор
Эксперт .NET
 Аватар для Yury Komar
4359 / 3429 / 512
Регистрация: 27.01.2014
Сообщений: 6,258
10.06.2020, 18:09
Uswer, я думаю стандартная ячейка ComboBoxCell такого не умеет, и поэтому, как я и писал выше, нужно в месте текущей ячейки динамически создавать (или иметь уже созданный, но спрятанный) обычный WinForms'ный ComboBox и отображать его а при смене фокуса - прятать или удалять, с переносом введенных/выбранных значений в текущую ячейку.
К сожалению кодом сейчас не помогу - нет возможности воспользоваться студией, с телефона тут.
Поэтому - только идеи и советы
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.06.2020, 18:09
Помогаю со студенческими работами здесь

DataGridView - при выборе элементов в ее ComboBox вызывать разные формы
Всем доброго времени суток. На форме, есть элемент управление dataGridView, в нем в одно из столбцов значение можно выбрать из...

Загрузка данных одной из таблиц в DataGridView в зависимости от выбора в ComboBox
Всем привет, Есть такая задача. Добавил в WindowsForm DataGridView. В настройках DataSource поставил 1.accdb в 1.accdb есть 4...

Поиск по колонке в DataGridView
Всем привет, такая проблема, у меня есть функция поиска, которая ищет данные в datagridview. В самом ГРИДЕ есть столбец Дата ОКОНЧАНИЯ...

Изменить значение в колонке при выборе comboBox
Всем привет. Имеется DataGrid <DataGrid Name="grid2" HorizontalAlignment="Left" Margin="10,10,0,0" VerticalAlignment="Top"...

Изменение цвета в колонке dataGridView
Допустим, есть таблица dataGridView. В ней есть 4 колонки. Как сделать так, что бы если в 4 колонке текст изменился на...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Очистка реквизитов документа при копировании
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
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru