Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.94/16: Рейтинг темы: голосов - 16, средняя оценка - 4.94
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104

Правильное формирование и разбор JSON

07.03.2016, 01:58. Показов 3443. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Ситуация такова: есть таблица в mySQL, со следующими полями id, description, longitude, latitude. Таблица заполнена, description - название здания, longitude, latitude - координаты.
В php я создаю и заполняю массив который выдергивает эти координаты, если это здание упоминается в другом массиве. Создаю и заполняю вот так.
PHP
1
2
3
4
5
6
7
8
9
10
11
foreach ($records as $row)
        {
            $coordinates = array();             
            $coordinate = $mysqli->query("SELECT longitude, latitude FROM housing WHERE description='".$row['id_housing']."'");
                while ($kd = $coordinate->fetch_assoc())
                {
                    $coordinates[] = $kd;
                }
/*Перевожу массив в JSON*/
                $a = json_encode($coordinates);
        }
Теперь мне необходимо разобрать JSON в JS. Но как я ни гуглил не пойму как это сделать. Да и сам JSON у меня странно выглядит - 2 разных здания - 2 пары квадратных скобок:
PHP
1
2
3
                $a = json_encode($coordinates);
                echo $a;
/*JSON - [{"longitude":"55.830457","latitude":"37.554969"}][{"longitude":"55.832995","latitude":"37.549956"}]*/
2 пары квадратных скобок это нормально или всё должно быть в одних квадратных скобках?
Что я хочу от скрипта JS. Цикл, который перебирает массив JSON и присваивает переменной X - значение longitude, а Y - значение latitude.
JavaScript
1
2
3
4
var coordinates = JSON.parse(<?php echo $a;?>, function(key, value)
            {
/*мне кажется у меня в coordinates только половина [{"longitude":"55.830457","latitude":"37.554969"}] */
            });
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.03.2016, 01:58
Ответы с готовыми решениями:

Разбор многомерного массива (Json, мультиполигон)
Имеется массив вида: , , , , ], , , ] ] С помощью функции function parseArray(arr) { var newArr = ;...

Разбор JSON и вывод таблицы с одной строкой + AJAX
вот код &lt;html&gt; &lt;head&gt; &lt;meta charset=&quot;UTF-8&quot;&gt; &lt;title&gt;JDBC Examples&lt;/title&gt; &lt;link rel=&quot;stylesheet&quot;...

Разбор JSON, используя Newtonsoft.Json
Добрый день! Подскажите пожалуйста, как десериализовать JSON-ответ следующего вида {&quot;result&quot;: ...

20
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 02:34
TampLieR, json_encode - сереализирует данные, в основном для отправки на клиента (в браузер)

по идее вам должен прийти массив из 2ух обьектов

вот примерный код, если я вас правильно понял - https://jsfiddle.net/xxtLL2La/

Добавлено через 1 минуту
на сколько я понял у вас все в одном файле)
каша это не хорошо)
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 02:50  [ТС]
temkasky, нет не в одном файле, но и утверждать что у меня все правильно не возьмусь. Есть файл index.php в нём подключение к БД, обработчик формирования страниц и массивы я тоже там формировал. Есть шаблоны, где происходит сбор страницы из кусочков контента, + header, footer.
Код JS у меня в находится в header.php
Спасибо, сейчас попробую!
0
07.03.2016, 02:55

Не по теме:

php код держите в php файлах
html -> *.html
js -> *.js
json -> *.json

Совет на будущее)
потом самому же будет легче)
вы же css код инлайново не пишете в php файлы.
..я надеюсь)

0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 03:14  [ТС]
temkasky,
Цитата Сообщение от temkasky Посмотреть сообщение
//По идее объект у вас выглядит так.
JavaScript
1
2
3
4
5
6
7
8
9
10
var testObject = [
    {
    "longitude":"55.830457",
    "latitude":"37.554969"
  },
  {
    "longitude":"55.832995",
    "latitude":"37.549956"
  }
];
Нет, поэтому я и спрашивал про 2 пары квадратных скобок.
Выглядит если в php распечатать так -
PHP
1
[{"longitude":"55.830457","latitude":"37.554969"}][{"longitude":"55.832995","latitude":"37.549956"}]
Добавлено через 1 минуту
В JS вот так -
JavaScript
1
[{"longitude":"55.830457","latitude":"37.554969"}]
Только половина

Добавлено через 6 минут
temkasky, css пишу в .css, остальное в php. А если в файле с расширением .html встретится переменная <?php=$b?>. Она же не отобразится?
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 03:20
ааа, я понял.
не обратил внимания что вы гоняете в цикле
PHP
1
 $a = json_encode($coordinates);
вынести надо за цикл.

PHP
1
2
3
4
5
6
7
8
9
10
11
foreach ($records as $row)
        {
            $coordinates = array();             
            $coordinate = $mysqli->query("SELECT longitude, latitude FROM housing WHERE description='".$row['id_housing']."'");
                while ($kd = $coordinate->fetch_assoc())
                {
                    $coordinates[] = $kd;
                }
        }
/*Перевожу массив в JSON*/
                $a = json_encode($coordinates);
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 03:29  [ТС]
Спасибо, а я думаю что-то не то! Вроде 1 пара квадратных скобок должна быть, у меня две. С json сегодня первый день общаюсь

Добавлено через 3 минуты
Хм, а теперь у меня почему-то и в распечатке с php только координаты второго здания - первого нет.
JSON
1
[{"longitude":"55.832995","latitude":"37.549956"}]
Добавлено через 21 секунду
А должно быть 2.
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 03:35
это распечатка с $a?
или это на браузер приходит половина?
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 03:37  [ТС]
Распечатка $a
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 03:43
скиньте больше кода, я тут явной ошибки больше не вижу,
хотя можно и так попробовать)

PHP
1
2
3
4
5
6
7
8
9
10
11
12
$arr = array(); 
foreach ($records as $row)
        {
            $coordinates = array();             
            $coordinate = $mysqli->query("SELECT longitude, latitude FROM housing WHERE description='".$row['id_housing']."'");
                while ($kd = $coordinate->fetch_assoc())
                {
                    $coordinates[] = $kd;
                }
        $arr[] = $coordinates;
        }
                $a = json_encode($arr);
хотя, и так все в порядке вроде, или это ночь и я засыпаю)
1
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 03:52  [ТС]
temkasky, теперь JSON выглядит так -
JSON
1
[[{"longitude":"55.830457","latitude":"37.554969"}],[{"longitude":"55.832995","latitude":"37.549956"}]]
Добавлено через 1 минуту
В браузере так же!) Это ведь хорошо?

Добавлено через 4 минуты
Может тогда завтра дообсудим, а то и правда уже ночь!?
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 03:53
Закручено, но пойдет. Но теперь нужен еще 1 цикл для перебора.
Теперь у вас приходит массив из двух массивов в которых по одному обьекту
Я думаю промежуточный цикл вы и сами вставите)

Добавлено через 50 секунд
Можете скинуть весь код я посмотрю.завтра.
Доброй ночи!
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 04:10  [ТС]
JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
/*Использую API Яндекс карт для того чтобы вставить карту*/
<script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>
        <script type="text/javascript">
            var myMap, myRoute;
                ymaps.ready(init);
            function init () {
                myMap = new ymaps.Map ("myMap", {
                    center: [55.830457, 37.554969], 
                    zoom: 15,
            behaviors: ['default', 'scrollZoom']
                                });
            myMap.controls.add('zoomControl');
            myMap.controls.add('typeSelector');
/*здесь создание метки на карте*/
                        var x = [], y = [];
                function parseObject(obj){
                    obj = JSON.parse(<?php echo $a;?>)
/*два цикла*/}
/*метка*/
var myPlacemark = new ymaps.Placemark([x, y],
                {iconContent:'TY', hintContent:'TA'},
                {iconImageHref:'img/picture.png', iconImageSize:[30,30], iconImageOffSet:[0,0]});
        myMap.geoObjects.add(myPlacemark);
};
Добавлено через 1 минуту
И Вам Доброй ночи!
0
Superposition
 Аватар для Padimanskas
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
07.03.2016, 05:21
TampLieR,
PHP
1
2
3
4
header('Content-type: application/json; charset="UTF-8";');
...
$coordinate->fetch_all(MYSQLI_ASSOC);
echo json_encode($coordinate);
JavaScript
1
$.getJSON('path/to/ajax/coords.json', function(data){ ... });
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 14:26  [ТС]
Padimanskas, извините, но я не понял

Добавлено через 7 минут
temkasky, Здравствуйте!)

Добавлено через 6 минут
temkasky,
Цитата Сообщение от temkasky Посмотреть сообщение
Я думаю промежуточный цикл вы и сами вставите)
Не знаю как найти obj.length как Вы использовали в цикле
Энтропию заменил на знак вопроса
JavaScript
1
2
3
4
5
6
7
8
9
10
11
                /*два цикла*/var x = [], y = [];
                function parseObject(obj){
                    obj = JSON.parse(<?php echo $a;?>);
                    for(var i = 0; i < obj.length; i++){
                        for (var j = 0; j < ?.length; j++)
                        {
                            x.push(?[i][j].longitude);
                            y.push(?[i][j].latitude);
                        }
                    }
                };
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 14:40
как-то так
https://jsfiddle.net/xxtLL2La/1/
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 16:04  [ТС]
temkasky, а может не создавать массивы x и y, Попробовал так
JavaScript
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
<script type="text/javascript">
    var myMap, myRoute;
        ymaps.ready(init);
    function init ()
    {
        myMap = new ymaps.Map ("myMap",
        {
            center: [55.830457, 37.554969], 
            zoom: 15,
            behaviors: ['default', 'scrollZoom']
        });
        myMap.controls.add('zoomControl');
        myMap.controls.add('typeSelector');
 
        function parseObject(obj)
        {
            obj = JSON.parse(<?php echo $a;?>);
            for(var i = 0; i < obj.length; i++){
                x = obj[i][0].longitude;
                y = obj[i][0].latitude;
                var myPlacemark = new ymaps.Placemark([x, y]);
                myMap.geoObjects.add(myPlacemark);
                x=0; y=0;
            }
        };              
    };
</script>
И так
JavaScript
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
<script type="text/javascript">
    var myMap, myRoute;
        ymaps.ready(init);
    function init ()
    {
        myMap = new ymaps.Map ("myMap",
        {
            center: [55.830457, 37.554969], 
            zoom: 15,
            behaviors: ['default', 'scrollZoom']
        });
        myMap.controls.add('zoomControl');
        myMap.controls.add('typeSelector');
 
        var x = [], y = [];
        function parseObject(obj)
        {
            obj = JSON.parse(<?php echo $a;?>);
            console.log(obj)
            for(var i = 0; i < obj.length; i++){
                x.push(obj[i][0].longitude);
                y.push(obj[i][0].latitude);
                for (var j = 0; j < x.length; j++)
                {
                    var myPlacemark = new ymaps.Placemark([x[j], y[j]]);
                    myMap.geoObjects.add(myPlacemark);
                }
            }
        };      
    };
</script>
Не получилось Может что то не так разбираем в JSON?
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 16:28
Покажите код всего файла. Я не могу понять откуда вы запихиваете переменную а. Так делать нельзя
0
7 / 7 / 5
Регистрация: 28.07.2014
Сообщений: 104
07.03.2016, 16:41  [ТС]
Это index.php
PHP
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
<?php
    /*подключение к БД*/
    session_start();
    header('Content-type: text/html; charset=UTF-8');
    $mysqli = new mysqli('localhost','root','') or die('Error of connection to DB');
    $mysqli->select_db('first') or die('Can not select database');
    $mysqli->set_charset("utf8");
 
    define('IS_ADMIN', isset($_SESSION['IS_ADMIN']));
 
    $act = isset($_GET['act']) ? $_GET['act'] : 'list';
    
switch ($act) {
    case 'list':
        /*получили данные о заявке*/
        if (isset($_POST['statement'])) 
        {
        $surname = $_POST['surname'];
        $name = $_POST['name'];
        $middle_name = $_POST['middle_name'];
        $id_division = $_POST['id_division'];
        $id_housing = $_POST['id_housing'];
        $room = $_POST['room'];
        $descriptions_problem = $_POST['descriptions_problem'];
        $id_service = $_POST['id_service'];
        $id_system = $_POST['id_system'];
        $account = $_POST['account'];
        $phone = $_POST['phone'];
        $email = $_POST['email'];
        $time = $_POST['time'];
 
        /*запрос к БД - "Отправка данных в БД"*/
        $mysqli->query("INSERT INTO test VALUES (NULL,NULL,'$surname','$name','$middle_name','$id_division','$id_housing','$room','$descriptions_problem','$id_service','$id_system','$account','$phone','$email','$time',NULL,NULL,NULL,NULL)") or die('Error of sending data');
        $id = $mysqli->insert_id;
        }
        
        $records = array();
        $sel = $mysqli->query("SELECT * FROM test WHERE status<>'Выполнена' OR status IS NULL");
        while ($row = $sel->fetch_assoc()) {
            $records[] = $row;
        }
        /*создание массива с координатами для вывода его на карту*/
        foreach ($records as $row)
        {
            $coordinates = array();             
            $coordinate = $mysqli->query("SELECT longitude, latitude FROM housing WHERE description='".$row['id_housing']."'");
                while ($kd = $coordinate->fetch_assoc())
                {
                    $coordinates[] = $kd;
                }
            $arr[] = $coordinates;
        }
        $a = json_encode($arr);
        
        require("templates/list.php");
        break;
    case 'view-entry':
        require("templates/entry.php");
        break;
    case 'login':
        require("templates/login.php");
        break;
    case 'logout':
        unset($_SESSION['IS_ADMIN']);
        header ('Location: .');
        break;
    case 'do-login':
    /*Вход администратора*/
        $e_login = $_POST['login'];
        $e_password = md5($_POST['password']);
        /*запрос к БД - проверка по логину*/
        $query = "SELECT * FROM users WHERE login='$e_login'";
        $result = $mysqli->query($query);
        $user_data = $result->fetch_array(MYSQLI_ASSOC);
        $result->free();
        /*проверка по паролю*/
        if ($user_data['password'] == $e_password) {
            $_SESSION['IS_ADMIN'] = true;
            header('Location: .');
        }
        else {
            echo 'Не правильный логин или пароль';
            header('Location: ?act=login');
        }
        require("templates/.php");
        break;      
    default:
        die('No such action!');
}
    /*закрытие сессии*/
    if(isset($_POST['logout'])) {
        unset($_SESSION['name']);
        session_destroy();
    }
    /*закрываем подключение к БД*/
    $mysqli->close();
?>
Добавлено через 1 минуту
Это header.php
PHP
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
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
        <title>
            Управление информационных технологий
        </title>
    <script type="text/javascript" src="bootstrap/js/sorttable.js"></script>
    <link href="bootstrap/css/bootstrap.css" rel="stylesheet">
    <script src="bootstrap/js/jquery-1.12.0.js"></script>
    <script src="bootstrap/js/bootstrap.min.js"></script>
    <link href="bootstrap/css/style.css" rel="stylesheet">
    <script src="https://api-maps.yandex.ru/2.1/?lang=ru_RU" type="text/javascript"></script>
        <script type="text/javascript">
            var myMap, myRoute;
                ymaps.ready(init);
            function init ()
            {
                myMap = new ymaps.Map ("myMap",
                {
                    center: [55.830457, 37.554969], 
                    zoom: 15,
                    behaviors: ['default', 'scrollZoom']
                });
                myMap.controls.add('zoomControl');
                myMap.controls.add('typeSelector');
 
                /*var x = [], y = [];
                function parseObject(obj)
                {
                    obj = JSON.parse(<?php echo $a;?>);
                    console.log(obj)
                    for(var i = 0; i < obj.length; i++){
                        x.push(obj[i][0].longitude);
                        y.push(obj[i][0].latitude);
                        for (var j = 0; j < x.length; j++)
                        {
                            var myPlacemark = new ymaps.Placemark([x[j], y[j]]);
                            myMap.geoObjects.add(myPlacemark);
                        }
                    }
                };*/
                function parseObject(obj)
                {
                    obj = JSON.parse(<?php echo $a;?>);
                    for(var i = 0; i < obj.length; i++){
                        x = obj[i][0].longitude;
                        y = obj[i][0].latitude;
                        var myPlacemark = new ymaps.Placemark([x, y]);
                        myMap.geoObjects.add(myPlacemark);
                        x=0; y=0;
                    }
                };              
            };
        </script>
        <!--Функция свернуть/развернуть DIV-->
        <script type="text/javascript">
            function openDiv (id) {
            $(".openDiv").css({display:'none'});
            $('#'+id+'').toggle('normal');
            };
        </script>
        <!--Вращение кнопки на 360 https://www.cyberforum.ru/javascript-jquery/thread1180975.html-->
        <!--Смена кнопки верх-низ http://javascript.ru/forum/misc/1399-smena-kartinok-pri-nazhatii.html-->
        <script>
            function chg(id){
            el = null;
            var el = document.getElementById(id);
            if (el.src.indexOf("img/up.png")>0)
                {
                    el.src="img/down.png"
                }
            else
                {
                    el.src="img/up.png"
                }
            }
        </script>
</head>
Добавлено через 2 минуты
Файлы все равно сокращены и приведены не полностью, но у меня браузер видит строку <?php echo $a;?>
Вот так
JSON
1
[[{"longitude":"55.830457","latitude":"37.554969"}],[{"longitude":"55.832995","latitude":"37.549956"}]]
0
81 / 81 / 50
Регистрация: 26.11.2012
Сообщений: 303
07.03.2016, 17:04
Лучший ответ Сообщение было отмечено TampLieR как решение

Решение

вы функцию не вызываете, она же сама по себе не вызовется.
сделайте так

JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
function parseObject(obj)
                {
                    obj = JSON.parse(obj);
                    for(var i = 0; i < obj.length; i++){
                        x = obj[i][0].longitude;
                        y = obj[i][0].latitude;
                        var myPlacemark = new ymaps.Placemark([x, y]);
                        myMap.geoObjects.add(myPlacemark);
                        x=0; y=0;
                    }
                }; 
parseObject(<?php echo $a;?>)

Не по теме:

у вас такая каша)
html + js код в php файле. УЖАС!

1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.03.2016, 17:04
Помогаю со студенческими работами здесь

Правильное формирование базы
Здравствуйте, нужна помощь с созданием одной таблицы, описывающей посты на форуме. Структура такая(примерно): ID_post - код поста ...

Правильное формирование XML файла
Добрый вечер друзья помогите правильно сформировать XML файл. Написал метод который формирует XML ublic void SaverAgenda(string...

Правильное формирование данных в таблице
Добрый час Форумчане! Помогите с формированием данных в таблице. Я занимаюсь линиями ВЛ и хочу автоматизировать подсчёт...

Вывод по тексту и правильное формирование сайта
Вывод по тексту. Вообще сделал начало вывод по id, все нормально, но как сделать вывод по test, проблема в том, что если там предложение,...

Qt разбор JSON
все не могу разобраться в json, с vk возвращает это: &quot;{&quot;response&quot;:180075}&quot; мне нужно чтобы в лист вернуло информацию. ...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Номеклатура. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru