{
    "id": "fb156-positioned-update",
    "title": "Обновить именно текущий товар открытого курсора и сохранить сверку остатков",
    "columns": [
        "Наблюдение",
        "Результат"
    ],
    "rows": [
        [
            "Имя назначено открытому результату",
            true
        ],
        [
            "Кабель: остаток до сверки",
            0
        ],
        [
            "Кабель: остаток после сверки",
            10
        ],
        [
            "Клемма: остаток до сверки",
            4
        ],
        [
            "Клемма: остаток после сверки",
            14
        ],
        [
            "Товар вне выборки сохранил остаток",
            9
        ],
        [
            "Обновлено текущих строк",
            2
        ],
        [
            "Оба обновления подтверждены одной транзакцией",
            true
        ],
        [
            "Курсор дошёл до конца без ошибки",
            true
        ]
    ],
    "checks": {
        "cursor_named": true,
        "two_rows_updated": true,
        "first_current_row": true,
        "second_current_row": true,
        "committed_values": true,
        "outside_selection_unchanged": true,
        "clean_eof": true,
        "owned_objects_removed": true
    },
    "observations": {
        "cursor_name": "FB156_STOCK_CURSOR",
        "counted": {
            "1": 10,
            "2": 14
        },
        "applied": {
            "1": {
                "before": 0,
                "after": 10,
                "changed": 1
            },
            "2": {
                "before": 4,
                "after": 14,
                "changed": 1
            }
        },
        "stored": [
            {
                "ID": 1,
                "STOCK": 10
            },
            {
                "ID": 2,
                "STOCK": 14
            },
            {
                "ID": 3,
                "STOCK": 9
            }
        ],
        "selection_condition": "ID <= 2",
        "same_explicit_transaction": true,
        "update_before_next_fetch": true,
        "query_and_result_released_before_commit": true,
        "concurrency_load_test": false
    },
    "runtime": {
        "php": "8.2.35",
        "extension": "3.0.1",
        "server_version": "5.0.4",
        "database": "phpmanual153",
        "transport": "embedded_local_file"
    },
    "owned_objects": [
        {
            "type": "TABLE",
            "name": "FB156_CURSOR_1A8A895840"
        }
    ],
    "removed_objects": [
        {
            "type": "TABLE",
            "name": "FB156_CURSOR_1A8A895840"
        }
    ]
}
