| Предыдущая тема :: Следующая тема | 
	
	
		| Автор | Сообщение | 
	
		| ccc621 
 
 
 Зарегистрирован: 19.09.2018
 Сообщения: 27
 
 
 | 
			
				|  Добавлено: Ср Фев 19, 2020 11:50    Заголовок сообщения: RP 35 vs 32 |   |  
				| 
 |  
				| Добрый день! 
 Столкнулись со следующим.
 
 Например в компании 1000 работников.
 
 Открываем БОСС на платформе RP версии 32
 Открываем список работников
 Запускаем скрипт
 
 let _i = 0;
 
 scan @$glob
 execute{let _i += 1 ;};
 
 return _i
 
 На выходе имеем 1000
 
 
 Открываем БОСС на платформе RP версии 35
 Открываем список работников
 Запускаем этот же скрипт
 
 На выходе имеем 75
 
 
 Скажите, пожалуйста, для чего сделаны данные изменения и регулируются ли они системными переменными?
 Или же нужно теперь в каждый SCAN прописывать NOCHECK?
 Или может быть есть другое решение?
 |  | 
	
		| Вернуться к началу |  | 
	
		|  | 
	
		| RVV Большой шоколадный орден
 
  
 
 Зарегистрирован: 14.01.2010
 Сообщения: 452
 
 
 | 
			
				|  Добавлено: Ср Фев 19, 2020 12:13    Заголовок сообщения: |   |  
				| 
 |  
				| 1 Scan идет по отмеченным (check) записям? 2 Список зачитан полностью?
 |  | 
	
		| Вернуться к началу |  | 
	
		|  | 
	
		| ccc621 
 
 
 Зарегистрирован: 19.09.2018
 Сообщения: 27
 
 
 | 
			
				|  Добавлено: Ср Фев 19, 2020 12:15    Заголовок сообщения: |   |  
				| 
 |  
				|  	  | RVV писал(а): |  	  | 1 Scan идет по отмеченным (check) записям? 2 Список зачитан полностью?
 | 
 
 
 В том то и дело, что на платформе 32 не нужно было ни отмечать записи ни зачитывать весь список.
 |  | 
	
		| Вернуться к началу |  | 
	
		|  | 
	
		| RVV Большой шоколадный орден
 
  
 
 Зарегистрирован: 14.01.2010
 Сообщения: 452
 
 
 | 
			
				|  Добавлено: Ср Фев 19, 2020 12:38    Заголовок сообщения: |   |  
				| 
 |  
				| Скорее всего, это недокументированная фича. Тк SCAN работает по отмеченным записям
 |  | 
	
		| Вернуться к началу |  | 
	
		|  | 
	
		| ccc621 
 
 
 Зарегистрирован: 19.09.2018
 Сообщения: 27
 
 
 | 
			
				|  Добавлено: Ср Фев 19, 2020 13:23    Заголовок сообщения: |   |  
				| 
 |  
				| Тогда возникает вопрос, почему работало раньше? 
 Значит типа что раньше SCAN работал неверно?
 |  | 
	
		| Вернуться к началу |  | 
	
		|  | 
	
		| DUCKKK Большой шоколадный орден
 
  
 
 Зарегистрирован: 16.09.2009
 Сообщения: 1698
 
 
 | 
			
				|  Добавлено: Ср Фев 19, 2020 14:10    Заголовок сообщения: |   |  
				| 
 |  
				| Оператор SCAN отрабатывает только записи с CHECK, поэтому нет смысла зачитывать весь список, особенно если он с неполной зачиткой, такие списки могут быть очень велики. В данном случае обработка SCAN производится только по записям, которые уже зачитаны в память. Операция “let _i += 1 ;” выполняется только для записей с CHECK. В случае SCAN … NOCHECK, обработка списка ведется по всем записям списка. В версии 35 и выше работа данного оператора приведена в соответствие с документацией.
 |  | 
	
		| Вернуться к началу |  | 
	
		|  | 
	
	
	
	
		|  |