Blow Error Messages
Some programming errors cannot be captured during a compile of the PREPARE specifications. There are cases when such an error will cause Survent to terminate the interview in progress and quit. If this occurs, an error message will be displayed with a description of the cause of the problem, and the number of the question on which the error occurred. These messages are called blow error messages.
Here is an example blow error message:
(ERROR #9760) blow 108 label QN27C qn 2.25 FATAL Questionaire design error 108 AT QUESTION (QN27C) - 2.25 data: 5 29JAN16 14:09:08: Please call your supervisor or the questionnaire designer for help report error # (108) on ldev 132 survent blow 108 reason: 108 FIELD/CAT,A (USE_PREVIOUS) is blank or has bad data
The Blow number in this case is 108. The label of the question the problem happened at is QN27C. The question number of 2.25 gives you an idea of the position of the question in the survey. The data tells you that there was a 5 in the location of this question. It also provides the data/time stamp it took place, along with the station number/ldev that it happened on. The full text of the blow message is printed on the “reason” line.
In the event that Survent terminates with a blow error, interviewers MUST NOT CLEAR THE SCREEN. They should immediately contact their supervisor and show them the screen. If possible, the supervisor should do a “screen capture”, otherwise they should write down all the pertinent information from the message which includes all the following:
- The Blow Number
- The Question label that it occurred at
- The “data” that was in the question
- The date and time
- The station/ldev number
- Any information the interviewer can provide about what they were doing just before the blow took place. For instance, were they backing up to re-ask a question, trying to suspend the interview, etc.
Interviewers should be instructed to collect this information if the supervisor is unable.
The supervisor should be able to tell from the message itself or may need to refer to the list of error numbers below so that they can determine whether the problem can be fixed by the questionnaire designer, or whether Survox Support is needed. For instance, in the example above the message clearly states to contact the questionnaire designer.
In addition, Survent will write out (up to the point of the abort) the data case that aborted into a separate directory named <study>.B_. If the group does not exist, Survent will create it. You can then use this file to try to track down the problem that caused the abort, using VIEW mode of Survent, or CLEANER, to check the responses up to that point.
The file LOG<intvid> is saved whenever an interviewer aborts with a blow error. This is to help you in debugging the problem. The LOG file contains a record of all answers typed by the interviewer.
NOTE: The LOG file is cumulative, so the Blow information will appear at the bottom of the file if it already exists.
The file will be saved in the interviewers log sub-directory (usually ${CFMC}intvr_logs).
Blow errors are problems that have been identified by our staff. Other unidentified problems may occur, though. For instance, it is possible to get error messages regarding stack overflow, related to not enough memory on your computer, or due to your computer network or operating system.
These problems will usually require some modification of your computer, but you may want to contact Survox Support anyway to see if we have any suggestions that may help eliminate the problem.
Blow errors have one of four causes:
- Questionnaire Design Mistakes: A specification error has been made which caused Survent to abort. These problems must be fixed by the questionnaire designer. These problems are indicated below as “Q’naire” problems. Often they can be found by running Random Data Generation to try to simulate all interviewing possibilities.
- Survent Programming Bugs: These are problems we have not yet been able to diagnose yet in the software. You should call us immediately if this occurs. We will need with a good description of what occurred at your site and the files that caused the problem. With this information, we should be able to fix the problem. These are marked below as “Survox”.
- File Corruption: The questionnaire file, phone file, or related files have been corrupted. This can only be determined by the Survox staff, although the general recovery procedure is to rebuild the corrupted file. These are marked below as “Corrupt Data File”.
- System: There is some problem with the system (file not available) or the network sending messages or data to/from the SUPERVISOR. These are marked below as “System”.
SERVER CAN SEND BLOW ERRORS VIA E-MAIL
The Server can send e-mail messages if blows occur.
When the Survox study server gets a Survent blow, it looks for the file ”<studycode>_blow.csh” in the ${CFMC}control directory and if that exists, it is executed, if not, then it looks for ”<studycode> _blow.sh”.
Otherwise, it looks for ${CFMC}control/studyblow.sh, and if that exists, it executes that. If, for some reason, it doesn’t know the study code, it uses the study code “unknown” and tries to execute “unknown.sh”. The environment variable CFMCBLOW is also created, which contains “BLOW at session # from ldev #”. This can be referenced in the shell script.
If there is text string associated with the blow, a second environment variable CFMCBLOWTEXT is created with that text which could be displayed by the script. The environment variable CFMCBLOWSTUDYCODE is also created, so you can have a generic studyblow.sh file that shows which study code blew up.
Here is an example studyblow.sh ‘csh’ script:
#!/bin/csh echo "Blow $CFMCBLOW on study $CFMCBLOWSTUDYCODE, Text: $CFMCBLOWTEXT\n">>xx NOTE: Older versions of the software prior to 8.8.17 these blow files were stored in the ${CFMCCFG} sub-directory.
Descriptions of Blow Errors
NOTE: The solution articles are under construction. Not all Blow Errors will have an article created for it explaining in detail information on how to fix it.
Error # | Error Message | Type | Solution Article |
01 | GET_NEXT_ROTATE_QUESTION: Failed To Find Question | ||
02 | Fs_Interview: Can’t Find Next Question To Execute | ||
03 | PUTANSWER: Answer Array Overflow, Use Larger ANSWER_LENGTH In Header | Q’naire | |
04 | Fs_Interview: Can’t Find Next Question, Failed Checkblockstart | System | |
05 | Failed To Construct Clean Resume File | ||
06 | Internal Fs_Next Answer Overwritten | ||
10 | Would Put Down Phone Number With Status Complete But Is Not Completed | ||
12 | EVALUATE: Quota Index Out Of Range | Survox | |
13 | EVALUATE: String Compare Width > 4999 | ||
14 | EVALUATE: Comparing Different Length Strings | ||
16 | DO_RESET: Reset To A Question Never Asked | Survox | |
17 | GETANSWER: No Answer In Answer Array | Survox | |
18 | RESUME Didn’t Backup To Resume At Question Number | Q’naire | |
24 | EVALUATE: Op Function Calls Unimplemented | Survox | |
25 | EVALUATE NUMITEMS Gets Negative Stack | ||
26 | EVALUATE Stack Overflow | ||
27 | EVALUATE Beyond Limits For Fonetext/Localscratch | ||
28 | Fone System Returned Wrong Number; Index Files Must Be Rebuilt | ||
32 | Journal File Read Error. | Survox | |
60 | Hit ENDROTATE (-513) In Setrotpoint80 | Q’naire | |
80 | Before Re-Executing Interview, Could Not Open New Journal File-See 180/181 | ||
81 | While Re-Executing Interview, The Qff File Is BAD | ||
82 | Disk-Based Recode Infinite Loop96 Q’naire | ||
96 | Can’t Find Endrotate Question | Q’naire | |
97 | Rotate With Bad Rotate Header | ||
99 | Unable To Get This Question | Q’naire | |
100 | Unable To Get Question In This Loop | Q’naire | |
101 | Not Enough Room To Put Question On The Screen Or In Specified Box | Q’naire | |
102 | Data Overflow On FIELD Question With !GEN,O (NET) | ||
103 | Blanking Text | ||
104 | Disk-Based Recode Branch/Screen Too Big (> [Maxqstsize]) | ||
105 | GOTO Question Goes To A Label That We Can’t Find | ||
106 | CAT,I Refers To Different Width Response Or Not CAT107 | Q’naire | |
107 | Disk-Based-Recode Table With No Matching Response | ||
108 | FIELD/CAT,A (USE_PREVIOUS) Is Blank Or Has Bad Data | Q’naire | |
109 | VAR,A (USE_PREVIOUS) Must Have At Least <Minimum Length> Characters | Q’naire | |
110 | FIELD Disk Based Recode Table, Can’t Find Response | Q’naire | |
111 | EDIT Question Target Question Not VAR Or TEXT Question | Q’naire | |
112 | EDIT Question Trying For A Question And Not Finding It | Q’naire | |
113 | Trying For A Numbered Quota Larger Than [MAX_QUOTA_NUMBER] | Q’naire | |
114 | Too Many Numbered Quotas Which Are Not Incremented ‘NOW’ | Q’naire | |
115 | Nseval – Looking For Numbered Quota < 1 | Q’naire | |
116 | Can’t Access Quota File | System | |
117 | GEN,A (ADD) Data Overflow Adding To A FIELD Question | ||
118 | ENDGRID Within ROTATE | ||
119 | Maximum Less Than Minimum In NUM Question (Eg. !NUM,,,10-1) | ||
120 | Zap_Text – Bad Text Pointer (Points Out Of Text Area) | Q’naire | |
121 | Zap_Text – Bad Back Pointer (Not Point Back To Text Pointer) | Q’naire | |
122 | Zap_Text – Next Back Pointer Out Of Data Area | Q’naire | |
123 | Got A SURVSUPR TYPE (QFFNAME) Message In The Middle Of Interviewing. | ||
124 | Got An Unsolicited Phone Record. Something Is Wrong. | ||
125 | Executing !SPECIAL Block Of Questions, Failed To Get Next Question | ||
126 | (Unused??? Executing !SPECIAL Block Of Questions, Hit A ROTATE Or LOOP) | ||
127 | Saveresponse, And Last Journal Record Does Not Match Question | ||
128 | Fillin_Sameas_Recodetable, Can’t Find Question Pointed To Which | ||
129 | Executing !SPECIAL Block, Can’t Find The !END_SPECIAL Marker. | ||
130 | CAT Or FLD Question Target Data Columns Are Not Empty | ||
130-137 | Old Rolm Errors; Rolm No Longer Supported. | ||
138 | !ENDGRID With Uninitialized !GRID — Did You Skip Into Grid? | ||
139 | Error Moving To Question In !GRID | ||
140 | More Than MAX_GRID_QQS ( 200 ) Or Max(Imum)_Grid_Q(Uestions)=# In Grid | Q’naire | |
141 | QREF Put Greater Than Max Specified | ||
142 | Text Pointer Put On Existing Data | Q’naire | |
143 | Data Put On Existing Text Pointer | Q’naire | |
144 | Recode Item Beyond Memory | ||
145 | Unasked Question In Websurvent Grid | Q’naire | |
146 | Unasked Question In Grid — Must Use !Grid,R | Q’naire | |
147 | !Grid,R In Websurvent | Q’naire | |
148 | QREF Error – Get With No Eval | ||
149 | Nextexcol Bad Set By Zap_Text | ||
150 | Child_Resume With Bad Response | ||
151 | CFMCRESUME Environment Not Set Properly | ||
152 | DBR, Error In Terminal Code Or Text, Or Bad Data In View | ||
153 | Qnaire Reference To Phone Text Position Beyond Actual Phone Text Length | ||
154 | Question Width > MAXDATAWIDTH | ||
155 | Evaluate Width > MAXDATAWIDTH | ||
156 | RSET In Viewmode Is Fatal | ||
157 | GEN,R (REPLACE_CODES) Exceeded Available Width | ||
158 | Not ODBC Question On Resume | ||
159 | QREF Error — No Qref Array | ||
160 | QREF Error — Too Many Items | ||
161 | QREF Error — Too Many Blocks | ||
162 | Fatal Core (Memory) Error | ||
163 | Failed To Get Popup Other Question | ||
164 | Trying To Popup Other In Web, But Not In Grid | ||
165 | Tried To Set A Language Not On The List | ||
166 | ODBC Control Area Mismatch On Resume | ||
167 | ODBC Case Length Not Same On Resume | ||
168 | ODBC Fetch Area Not Same Length On Resume | ||
169 | ODBC Subtype Not Same On Resume | ||
180 | Failed To Open Resume Temp File | ||
181 | Failed To Get_Resumefile_Head | ||
182 | Failed Copy Resume Responses | ||
201 | Getplocation Got A Bad Location ( <= 0 ) | ||
202 | Get_Locwid Offered A Label Which Was Not To Be Found | ||
203 | Can’t Get Fonehead Info From Server, Or Fonehead Length 0 | ||
206 | Couldn’t Open Local Data File | ||
207 | SPC,P (GET_CASE) With A Case Already In Hand | ||
208 | Survsupr Killed Survent | ||
222 | Can’t Verify This File | Q’naire or Corrupt Data File | |
223 | Datafile Length Differ From QFF File Caselength | Q’naire | |
224 | Failed To Open DOS Data File | ||
225 | Failed To Close DOS Data File | ||
226 | Trying To Read Or Write A Local Case When We’re Attached To A Server | ||
227 | In_Special<> Had Problems Finding The Start And End Of The Special Block | ||
300 | Backing Up Through !CALL: Journal History Corrupted | ||
301 | Found Wrong Label Trying To Back Into Q_Called Trailer | ||
302 | Saved Wrong Length Survent Control Structure In Q_CALL | ||
303 | Level Difference Not 1 Between Lower Q_CALL | ||
304 | Level Difference Not 1 Between Higher Q_CALL | ||
305 | Failed To Restore Previous Questionaire In Trailer Q_CALL | ||
306 | Wrong Label For Saved Answer Array In Q_CALL | ||
307 | Wrong Label For Saved Data In Q_CALL | ||
308 | Caselen And Ms->Prephead.Case_Len Don’t Match In Q_CALL | ||
309 | Case ID Not Filled In At Q_CALL ( You Need A Previous !Spc,A ) | ||
310 | Can’t Open Q_CALL Data File | ||
311 | Child_Level Greater Than MAX_CHILD_LEVEL ( 5 ) | ||
312 | Can’t Restore DATACASE Structure In Return_From_Call | ||
313 | Can’t Find Question While Resuming !Call Questionaire | ||
314 | PHONE,A (ADD_NUMBER) Not Allowed With No Server | ||
315 | Dialer Connection Failed | ||
316 | Error Attempting To Delete Child Data Record | ||
317 | Running In HTML Mode, Called Nextcardc(). | ||
318 | Tried To Get Default Fone Status Screen After It Was Disabled | ||
319 | Failed To Get GRID Qq In Execute_Cgi_Response | ||
320 | You Have Exceeded Your Maxmimumjournalfilesize | ||
321 | Highlightcats Can Only Work To A Terminal Screen | Q’naire | |
322 | Gen,D Failure | ||
323 | !Call Don’t Return Inside Child | ||
324 | Bad Status At End Of Interviewq’naire | ||
400 | Endless Loop ( Try Setting Backwards_Skips=# In Header Where # > 200 ) | ||
401 | Child Questionaire Blew, So I Do Too! | ||
402 | Failed Qwin_Ask In S_Grid | ||
403 | Failed Qwin_Ask Q_DISP | ||
404 | Failed Qwin_Ask Q_ENDGRID | ||
405 | Failed Qwin_Ask Q_TEXT653 | ||
653 | Qwindow Text | ||
654 | Text Box Error | ||
700 | Cgidata Not Set | ||
894 | Making Recording, Question Syntax Not Correct (Missing ! Maybe?) | ||
895 | Making Recording, Specified File Doesn’t Exist | ||
896 | Making Recording, Get Text From Spec File Failed | ||
897 | Getting Case From Non-Indexed Data File | ||
898 | Message Size > 100000 Too Large For Websurvent | ||
899 | Failed To Send Message To Stdysrvr | ||
900 | Network Error – Failed To Get Quota Or Master Quota | System | |
901 | Called Questionaire Cannot Do SPC,P (GETCASE) Or Phonesays_Datarecord Using Caseid | ||
902 | Network Error – Unable To Send Datacase/Phone Record To Cfmc Server | System | |
903 | Case Sent Different Length Than Master File, Or Timeout | System | |
904 | Network Error – No Phonerec To Put Suspend Name Into. | ||
905 | PHONE,M (MARKET) Command To Set Market, But No Markets In File | Q’naire | |
906 | PHONE,G/P/9 (GET/PUT/RESUME) Attempted With No Phone Record Loaded | Q’naire | |
907 | Unused | Q’naire | |
908 | Callback Days Ahead, Shop Not Open On Target Day | Q’naire | |
909 | Callback Days Ahead, No Good Time On Target Day | Q’naire | |
910 | Client_Abort For Some Reason | ||
911 | Abnormal Exit Thru Exit_Function, Possibly No Quotafile | ||
912 | You Have Probably Already Finished The Survey: Failed To Get Phone Record | ||
913 | (Blow 913, No Additional Text) | ||
914 | (Blow 914, No Additional Text) | ||
915 | Child Quotas Are Different Than Parent ( Without -Quota_Crc_Check ) | Q’naire | |
916 | Validator Failed To Pick Up Case | ||
917 | Rdgc Qq Exceeded Max Allowed | ||
918 | Rdgc Error | ||
919 | Not Enough Questions Matched In Rdgc | ||
920 | Error Parsing !Html_Rdg Command | ||
921 | Out Of Space For Rotate_Order | ||
922 | Server Says Blow | ||
923 | Fatal Error With Template File | ||
924 | Failed To Get Qq With !Call,5 | ||
925 | Exceeded Max_Phone_M Setting | ||
926 | Language Not In Header, Default 1 | ||
927 | Exceeded Max_Quota_Now Setting, Default 5 | ||
928 | !Cat,N And !Fld,N Not Allowed In WEBMODE | ||
929 | PHONE,M (MARKET) To Change Market Weights, But No Markets In <Study>.Fon File | ||
930 | PHONE,Z (CALL_NOTE) With No Historynotelength Specified | ||
931 | Quotanumber < 0 In M_Incr_Quota | ||
932 | Caseid Doesn’t Match Data — May Need SPC,D (ASSIGN_CASEID_FROM_DATA) | ||
933 | \\[ Reference With No Phone File Loaded Or Beyond Phone Text Location | ||
934 | Preview Mode Connect, But Survent Has No Phone Number — !Phone,D Without A Phone,1? | ||
936 | Shopfone Fonefile Header Has Not Been Set Or Has Been Reset To NULL | ||
937 | Failed To Open Intvrlog File With Read-Write Access | ||
938 | Rel77 Does Not Allow ‘Popup’ Questions | ||
939 | SPC,W,X (WRITECASE,ASSIGN_NEW_ID) Requires Caseid Eg. From SPC,A (ASSIGN_ID) | ||
940 | Different Caseidlen In Parent And Child Questionnaires | ||
941 | 77 And 76 Blow If !Phone,S In Child Questionnaire | ||
942 | !Phone,J To Unknown Market | ||
943 | Failed To Save Data Record In Suspend | ||
944 | CAT,C And CAT,D Are Not Allowed In Web-Mode, Try FLD,I (Include_Exclude) | ||
945 | Can’t Do SPC,W,U (WRITECASE,UPDATE) Without Previous SPC,A (ASSIGN_ID) Or D (ASSIGNCASEID_FROMDATA) | ||
946 | SPC,P (GETCASE) But You Already Have A Case — Maybe Use SPC,P,3/4 (WRITE_AND_QUIT/CONTINUE) | ||
947 | In Execute_Cgi_Response<>, Bad Ms Structure | ||
948 | In Execute_Cgi_Response<>, Bad Screen Structure | ||
949 | Waited More Than 30 Seconds For Server To Reply To W_GET_IVW_POS | ||
950 | PHONE,9 (START_RESUME) Not Allowed In Called Questionnaire | ||
951 | WEB_MODE Popup Questions Must Be In A Grid | ||
952 | Bad Quotafile Position Specified | ||
953 | Phone,Dialnumber But No Phone Record Has Been Delivered | ||
954 | Sound Question For A Dialer Which Does Not Have Sound Capability | ||
955 | Blended Interview Ivrblock Failed To Send Data To Server | ||
956 | Tried To Get DTMF Answer But Prompt Filename Doesn’t Exist On Asterisk Box | ||
999 | Arrived At !Endgrid But Grid Not Initialized | ||
1105 | CAT/FLD,A (USE_PREVIOUS) With + Or – | ||
1106 | Can’t Open Quotafile | ||
1107 | Quota ( Name Gotten From Data ) Doesn’t Exist | Q’naire | |
1108 | No Allowable Response To A CAT/FLD,C/D/I (INCLUDE_EXCLUDE) Question | Q’naire | |
1109 | IMPOSSIBLE Return From Findltp<> — Call Joe Weisman 541-745-5265 | ||
1110 | You Cannot Execute An !Spc,U (Programmatic Suspend) Because The !Phone,9 (End Of Screener) Has Not Yet Been Executed | ||
9901 | Callback Hour When Shop Not Open | Q’naire | |
9902 | Programmatic Timed Callback Scheduled For Impossible Date/Time | Q’naire |