Сб, 16.10.2021, 05:12
Приветствую Вас Гость | RSS
Главная | Куча вопросов от новичка. - Страница 9 - Форум | Регистрация | Вход
Форма входа
Логин:
Пароль:
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 9 из 9
  • «
  • 1
  • 2
  • 7
  • 8
  • 9
Форум » Технические форумы » Hercules » Куча вопросов от новичка.
Куча вопросов от новичка.
LionLexXxДата: Ср, 22.09.2021, 06:48 | Сообщение # 121
Лейтенант
Группа: Проверенные
Сообщений: 50
Репутация: 1
Статус: Offline
Цитата Gregory ()
но это в данном случае неважно, какой именно там у Вас UNICODE,  я понимаю что Вы таким образом просто отправляете некорректный файл.
совершенно верно

Цитата Gregory ()
Это Вы статус виртуального устройства смотрите, а в данном случае интересен статус "реального", т.е. Q 0001
Посмотрите, что происходит если после ошибки выполнить в VM команды VARY OFF 0001 / VARY ON 0001



после отправки не корректного файла
статус устройства на веб-сервере

После зависания ридера СВМ реагирует на команды так же, как и до

Добавлено (22.09.2021, 06:56)
---------------------------------------------

Цитата Gregory ()
А вообще, как я понимаю, основную причину Вы сами нашли - некорректные символы)
Нет, данное зависание возникает, когда его воспроизводишь специально. Т.к. все задания по регламентному заданию отправляются и отрабатывают, и у всех заданий кодировка указана верно. Но иногда происходит подобное зависание по непонятной причине. Такое зависание может происходить с периодичностью раз в месяц или раз в несколько месяцев.

Добавлено (22.09.2021, 07:31)
---------------------------------------------

Цитата Gregory ()
По идее, такие же проблемы вызовет и кириллица в тексте (т.е. файл в кодировке 1251) но это надо бы проверить.
Задания с кирилицей принимает и отрабатывает, не зависает. Только кирилицу воспринимает, как вы говорите, по своей некирилической таблице кодировки. Но на выполнение данного задания это не влияет, т.к. кирилицей указаны значения для записи в текстовый файл.

например задание:
Код
ID BATCH
/*
/JOB OPERATOR 61000630 UNLOAD07
FI * CLEAR
CP LINK BMAEXP1C 191 12 MR MW
AC 12 A
AC 193 B
AC 194 E
ERASE PARAM_07 TXT A
EXECIO 1 DISKW PARAM_07 TXT A 1 F (FINIS STRING  АБВГД
EXECIO 1 DISKW PARAM_07 TXT A 2 F (FINIS STRING  ЕЁЖЗИ
UNLOAD07
/*
При выполнении данного задания создастся файл "PARAM_07 TXT A" с двумя строчками "АБВГД" и "ЕЁЖЗИ", только в файле не будет видно некоторых кирилических символов.

Добавлено (22.09.2021, 07:32)
---------------------------------------------
Я вышел из такой ситуации так, когда считываю файл в NATURAL(ADABAS), то выполняю перекодировку.

Код
DEFINE DATA                    
 PARAMETER                    
  1 #P_TXT(A250)                    
* 1 #P_KC (N3)                    
END-DEFINE                    
RESET #TXT(A250) #I(N3) #J(N3) #K(N3)                    
REDEFINE #TXT(#BB(B1/250))                    
#TXT = #P_TXT                    
* PУCCKИE БУKBЫ, COBПAДAЮЩИE ПO HAПИCAHИЮ C AHГЛИЙCKИMИ -> B PУCCKИE 
*            ПPИ ИCПOЛЬЗOBAHИИ TAБЛИЦЫ "EBC2ASCRUS"                  
*            (для кoдoвoй cтpaницы CP1251 Windows)                   
FOR #I = 1 TO 250                    
 IF #I < 249                    
  THEN                    
   DO                    
    #J = #I + 1                    
    #K = #I + 2                    
    IF #BB(#I) = H'40' AND                    
       #BB(#J) = H'40' AND                    
       #BB(#K) = H'40'            
     THEN ESCAPE   
   DOEND                    
*  Пpoпиcныe  *                         
 IF #BB(#I) = H'C1'    /* Бyквa  "A"    
  THEN #BB(#I) = H'70'                  
 IF #BB(#I) = H'C2'    /* Бykвa  "B"    
  THEN #BB(#I) = H'71'                  
 IF #BB(#I) = H'C3'    /* Бykвa  "C"    
  THEN #BB(#I) = H'72'                  
 IF #BB(#I) = H'C5'    /* Бykвa  "E"    
  THEN #BB(#I) = H'73'                  
 IF #BB(#I) = H'C8'    /* Бykвa  "H"    
  THEN #BB(#I) = H'74'                  
 IF #BB(#I) = H'D2'    /* Бykвa  "K"    
  THEN #BB(#I) = H'75'                  
 IF #BB(#I) = H'D4'    /* Бykвa  "M"    
  THEN #BB(#I) = H'62'                  
 IF #BB(#I) = H'D6'    /* Бykвa  "O"    
  THEN #BB(#I) = H'67'                  
 IF #BB(#I) = H'D7'    /* Бykвa  "P"    
  THEN #BB(#I) = H'69'               
 IF #BB(#I) = H'E3'    /* Бykвa  "T" 
  THEN #BB(#I) = H'51'               
 IF #BB(#I) = H'E7'    /* Бykвa  "X" 
  THEN #BB(#I) = H'52'               
*  Cтpoчныe *                        
 IF #BB(#I) = H'81'    /* Бykвa  "a" 
  THEN #BB(#I) = H'53'                            
 IF #BB(#I) = H'83'    /* Бykвa  "c"    
  THEN #BB(#I) = H'54'                  
 IF #BB(#I) = H'85'    /* Бykвa  "e"    
  THEN #BB(#I) = H'8B'                  
 IF #BB(#I) = H'96'    /* Бykвa  "o"    
  THEN #BB(#I) = H'55'                  
 IF #BB(#I) = H'97'    /* Бykвa  "p"    
  THEN #BB(#I) = H'56'                  
 IF #BB(#I) = H'A7'    /* Бykвa  "x"    
  THEN #BB(#I) = H'59'                  
 IF #BB(#I) = H'A8'    /* Бykвa  "y"    
  THEN #BB(#I) = H'64'                  
*  Cпeц. cимвoлы                        
 IF #BB(#I) = H'6A'    /* Бykвa  "|"    
  THEN #BB(#I) = H'66'                  
 IF #BB(#I) = H'4F'    /* Бykвa  "\"    
  THEN #BB(#I) = H'E0'                  
CLOSE LOOP       
#P_TXT = #TXT    
END


Ещё у нас в СВМ сделали кодировочную таблицу обратную ДКОИ. В ДКОИ совпадающие символы по написанию - латиница, а у нас кирилица.

Добавлено (22.09.2021, 07:34)
---------------------------------------------

Цитата Gregory ()
BTW. Я тут еще обнаружил программу sysrdr - gui эквивалент hercrdr) могу выложить, если хотите)

Выложите, пожалуйста, думаю будет не лишним.
Прикрепления: 8481180.jpg(35.0 Kb) · 6817770.jpg(9.7 Kb) · 0170561.jpg(35.3 Kb)
 
GregoryДата: Ср, 22.09.2021, 21:57 | Сообщение # 122
Генерал-майор
Группа: Доверенные
Сообщений: 392
Репутация: 15
Статус: Offline
sysrdr прикреплен
Прикрепления: sysrdr.exe(60.0 Kb)
 
GregoryДата: Ср, 22.09.2021, 22:07 | Сообщение # 123
Генерал-майор
Группа: Доверенные
Сообщений: 392
Репутация: 15
Статус: Offline
можно получить полноценную поддержку кириллицы в hercules/hyperion:

Код
cp_updt import h2g 1251to1025.xlt
cp_updt import g2h 1025to1251.xlt
codepage user
это команды консоли hercules/hyperion, по идее, это нужно включить в hercules.rc
таблицы прилагаются, это преобразования 1251 -> 1025 и 1025 -> 1251
Прикрепления: 1025to1251.xlt(0.2 Kb) · 1251to1025.xlt(0.2 Kb)


Сообщение отредактировал Gregory - Ср, 22.09.2021, 22:18
 
GregoryДата: Ср, 22.09.2021, 22:40 | Сообщение # 124
Генерал-майор
Группа: Доверенные
Сообщений: 392
Репутация: 15
Статус: Offline
программа от Dan Nelson для выполнения команд консоли hercules (альтернатива curl).
все необходимые программы уже написаны, нужно только их найти)
Прикрепления: herccmd.zip(31.3 Kb)


Сообщение отредактировал Gregory - Ср, 22.09.2021, 22:49
 
Форум » Технические форумы » Hercules » Куча вопросов от новичка.
  • Страница 9 из 9
  • «
  • 1
  • 2
  • 7
  • 8
  • 9
Поиск: