Not a number errors
I'm trying to set up a text box that displays different text each time a button is pressed. It will display different text on slide 1, slide 2, etc.var slideNumber:Number = 1;
var slide1:String = "Some Text"
var slide2:String = "Text" more
etc...
var narration_str:String;
my_btn.onRelease = function() {}
narration_str = slide + slideNumber;
}
I receive not a number errors, so I think that I have to convert the slideNumber into a string to make it readable. Or, if it's not her suggestions? Thank you.
var slide1:String = "please work!
var slideNumber:Number = 1;
var display_str = this ["slide" + slideNumber.toString ()];
trace (this ["Slide" + slideNumber.ToString ()]);
Tags: Adobe Animate
Similar Questions
-
NonLinearFitWithWeight do not erturn of error if exceeded the maximum number of iterations
Hello
It seems to me that the NonLinearFitWithWeight function does NOT return an error if the maximum number of iterations is reached without achieving a solution – unlike the description in the manual...
Previously, I had reported a bug related to the NonLinearFitWithMaxIters function that has been fixed in CVI2009 (bug ID 183434). However, since this function nonlinearfitwithweight is new on CVI2009, there could well be a bug too...
Wolfgang
-
Possible reasons:
Scripture cannot be performed because the number of data channels does not match number of channels in the task.
When writing, provide data for all channels in the task. You can also change the task so that it contains the same number of channels as the written data.
Number of job channels: 8
Number of data channels: 1Lama says:
The DAQmx vi writing gives me the error. If I run a single channel, isn't a problem. Multichannel gives me error.
You are funny! Why tie yourself to work VI (single channel) instead of one that gives you errors (multichannel)?
(If your car does not work, you bring car your wives to the mechanic, right!)
What is the exact text in the multichannel 'physical channels' when you do the AO control?
Lama says:
I did a sequence to ensure that each function has been run in the correct order. Wouldn't a race condition.
All you have to do is wire the 'start of task' error at the entrance of error of the DAQ assistant and then back to 'stop task' and things will run in order. Guaranteed! Think the stream! Everything else can run in parallel or the order is irrelevant.
First convert the sequence stacked to a sequence of plate, remove the flat sequence and add the mentioned son. Now, do a "cleaning pattern.
A when stacked with the inhabitants of the sequence is one of the worst construction you can possibly do. It makes the code difficult to follow, impossible to maintain, difficult to debug.
-
County to return read VISA does not match number of bytes
I encounter an error with a VISA reading. I ask 8 bytes (in number of bytes), but get only 7 return (return number), which causes errors in my code downstream. Curiously, the VISA Read block does not return an error. Any ideas on how to debug this?
Data sheet:
LabVIEW RT 8.2
VISA 4.3
Series OR 3.3.0
PXI-8431/4
Parameters: 1843200 Baud, 8N1.
Is VISA reading set to put an end to the reception of a termination character? I think that it does not have the stop in the output string character, which could make your short back counter.
Lynn
-
Whenever I try to download something, he said that he could not access APPDATA Error 1606. How can I solve this problem without any of my stuff getting deleted?
Hello1. what Internet browser do you use?2 are you having the same problem with other browsers also?Method 1: I suggest you try SFC running [System File Checker] scan on the computer that would be a system file corrupt on the computer search and replace.Method 2: If the problem persists, you can try the steps mentioned below and check if it helps.(a) click Start.
(b) type regedit in the Start Search and press enter.
(c) access the site mentioned below."HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders"(d) then change the appdata read "% USERPROFILE%\AppData\Roaming" thingNote: This section, method, or task contains steps that tell you how to modify the registry. However, serious problems can occur if you modify the registry incorrectly. Therefore, make sure that you proceed with caution. For added protection, back up the registry before you edit it. Then you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click on the number below to view the article in the Microsoft Knowledge Base:
322756 (http://support.microsoft.com/kb/322756/)
How to back up and restore the registry in Windows
Hope this information is useful. -
Hello
I still have the "system error 1068. The dependency service or group was able to start.
"I use Windows 7 Home premium 64-bit and my printer is HP PSC 1310 series.
I downloaded the latest driver in the HP website, but it will not continue installation that the print spooler is not started.
I tried "restart the spooler to print the title of the services, it does not, with the error message above.
I have check the dependencies and it say HTTP and RPC
I check on RPC and DCOM Server process Launcher two dependencies and the RPC end point Mapper is started
I went to regedit and found the keys as follows I don't know if its correct:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Spooler]
'DisplayName"="@%systemroot%\\system32\\spoolsv.exe,-1 '.
"Group"="SpoolerGroup."
"ImagePath" = hex (2): 25, 00, 53, 00, 79, 00, 73, 00, 74, 00, 65, 00, 6 d, 00, 52, 00, 6f, 00, 6f, 00,------.
74,00,25,00, 5 C, 00, 53, 00, 79, 00, 73, 00, 74, 00, 65, 00, 6 D, 00, 33, 00, 32, 00, 5 C, 00, 73,------.
00,70,00, 6f 00 6f, 6 c, 73, 00, 00, 00, 76, 00, 2nd, 00, 65, 00, 78, 00, 65, 00, 00, 00
'Description"="@%systemroot%\\system32\\spoolsv.exe,-2 '.
"LocalSystem ObjectName"=""
"ErrorControl" = DWORD: 00000001
"Start" =: 00000002
'Type' = dword:00000110
"DependOnService" is hex (7): 52, 00, 50, 00, 43, 00, 53, 00, 53, 00, 00, 00, 68, 00, 74, 00, 74, 00,------.
70,00,00,00,00,00
"ServiceSidType" = DWORD: 00000001
"RequiredPrivileges" is hex (7): 53, 00, 65, 00, 54, 00, 63, 00 62 00, 50, 00, 72, 00, 69, 00, 76,------.
00,69,00, 6 C, 00, 65, 00, 67, 00, 65, 00, 00, 00, 53, 00, 65, 00, 49, 00, 6 D, 00, 00, 65, 70, 00,------.
72,00,73,00, 6f, 00, 6F, 00, 61, 00, 74, 00, 65, 00, 50, 00, 72, 00, 69, 00, 76, 00, 69, 00, 6 c,
00,65,00,67,00,65,00,00,00,53,00,65,00,41,00,75,00,64,00,69,00,74,00,50,00,------.
72,00,69,00,76,00,69,00, 6 C, 00, 65, 00, 67, 00, 65, 00, 00, 00, 53, 00, 65, 00, 43, 00, 68,.
00,61,00, 6F, 00, 00, 65, 67, 00, 4F, 00, 6f, 00, 74, 00, 69, 00, 66, 00, 79, 00, 50, 00, 72, 00,------.
69,00,76,00,69,00 6 C 00, 65, 00, 67, 00, 65, 00, 00, 00, 53, 00, 65, 00, 41, 00, 73, 00, 73,------.
00,69,00,67,00, 6F, 00, 50, 00, 72, 00, 69, 00, 6 d, 00, 61, 00, 72, 00, 79, 00, 54, 00, 6f, 00,------.
6 b, 65, 00, 00, 6F, 00, 50, 00, 72, 00, 69, 00, 76, 00, 69, 00, 6 c, 00, 65, 00, 67, 00, 65, 00, 00,------.
00,53,00,65,00, 4 c, 00, 6f, 00, 61, 00, 64, 00, 44, 00, 72, 00, 69, 00, 76, 00, 65, 00, 72, 00,------.
50,00,72,00,69,00,76,00,69,00 6 C 00, 65, 00, 67, 00, 65, 00, 00, 00, 00, 00
"FailureActions" = hex: 80, 51, 01, 00, 00, 00, 00, 00, 00, 00, 00, 00, 03, 00, 00, 00, 14, 00, 00,------.
00,01,00,00,00,60, EE, 00, 00, 01, 00, 00, 00, 60, ea, 00, 00, 00, 00, 00, 00, 00, 00, 00, 00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Spooler\Performance]
"Close" ="PerfClose."
"Collect"="PerfCollect."
"Collect Timeout" = dword:000007 d 0
"Library"="winspool.drv".
"Object list"="1450".
"Open" = "PerfOpen."
"Open Timeout" = dword:00000fa0
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\Spooler\Security]
"Security" = hex: 01, 00, 14, 80, 78, 00, 00, 00, 84, 00, 00, 00, 14, 00, 00, 00, 30, 00, 00, 00, 02,------.
00, 1 c, 00, 01, 00, 00, 00, 02, 80, 14, 00, ff, 01, 0f, 00, 01, 01, 00, 00, 00, 00, 00, 01, 00, 00,------.
00,00,02,00,48,00,03,00,00,00,00,00,14,00, 8 d, 01, 02, 00, 01, 01, 00, 00, 00, 00, 00,------.
05, 0, 00, 00, 00, 00, 00, 18, 00, ff, 01, 0f, 00, 01, 02, 00, 00, 00, 00, 00, 05, 20, 00, 00, 00,------.
20,02,00,00,00,00,14,00, fd, 01, 02, 00, 01, 01, 00, 00, 00, 00, 00, 05, 12, 00, 00, 00, 01,
01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00
I go to C:\Windows\System32\spool\PRINTERS, there is nothing for me to remove it.
Any other advice would be greatly appreciated...
Hello yan_dao69,
I suggest that you try the methods below to solve the problem.
Method 1:
I suggest that you run the printer troubleshooter. This will automatically diagnose and fix printing problems:
http://Windows.Microsoft.com/en-us/Windows7/open-the-printer-Troubleshooter
Ideally, this would set the print spooler service issues.
Method 2:
I suggest that you disable the Antivirus software temporarily and verify if you are able to start the print spooler service. You can check the link that will give you information disable antivirus below:
http://Windows.Microsoft.com/en-in/Windows7/disable-antivirus-software
Note: Please make sure that you enable the antivirus software after the test to keep your computer protected.
Method 3:
Check the dependency of the spooler services in the registry.
a. Click Start, type regedit in the search box and press ENTER.
b. look for, and then click the following registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Spooler
c. right-click on spooler, click Export, save a backup file on your desktop.
NOTE: If an unforeseen problem be encountered after changing the registry, please double-click on the file to restore the backup.
d. in the details pane, if the DependOnService value shows values of RPCSS and other key, right-click DependOnService and then click on edit.
e. in the value data box, delete the other keys and then click OK.
f. exit the registry editor.
Important: This section, method, or task contains steps that tell you how to modify the registry. However, serious problems can occur if you modify the registry incorrectly. Therefore, make sure that you proceed with caution. For added protection, back up the registry before you edit it. Then you can restore the registry if a problem occurs. For more information about how to back up and restore the registry, click on the number below to view the article in the Microsoft Knowledge Base:
322756 (http://support.microsoft.com/kb/322756 ) how to back up and restore the registry in Windows.
Thank you
Irfan H, Engineer Support Microsoft Answers. Visit our Microsoft answers feedback Forum and let us know what you think. -
I'm running Windows 7 (not Vista) and trying to install a Kodak printer driver and get "cannot install the printer. Operation could not be performed. error 0x000003eb"I searched constantly everyday for a fix. You have a solution other than what answers are already in this forum. I uninstalled and reinstalled tried wireless and usb, installation driver separately, tried to install it in safe mode, run now utility scan. I think that the problem began with an update of Windows 7 which has hung up and eventually having a corrupted file?
Hello
What is the exact model of the printer number?I suggest you to check if the printer is compatible with Windows 7:If the printer is compatible, then uninstall all the drivers connected the printer to the computer, download the latest drivers from the website of the manufacturer, the install without connection to the printer.Connect the printer when it prompts.If the problem persists, contact the printer manufactrer for assistance
For more information see: http://support.en.kodak.com/app/answers/detail/a_id/1258/kw/Unable%20to%20install%20printer/related/1/selected/trueNote: The use of third-party software, including hardware drivers can cause serious problems that may prevent your computer from starting properly. Microsoft cannot guarantee that problems resulting from the use of third-party software can be solved. Software using third party is at your own risk. -
ORA-00947: not enough values error collect in bulk
Hi guys,.
I'm trying to COLLECT in a PL/SQL table, but I get ORA-00947: not enough values error message, even if the table has 4 values and select 4 values. Am I missing something?
I have to add something to this?
I've included the types of database objects that I created on the database.
I have commented on the Original code and used the table DOUBLE just to make simple workout.
/*
CREATE or REPLACE TYPE Usage_Groups_for_coda_rec as
object
(Usage_Group_ID NUMBER (10),)
Coda_comment VARCHAR2 (45).
Amount NUMBER,
Deduction_amount NUMBER);
CREATE OR REPLACE
TYPE USAGE_GROUPS_FOR_CODA_TAB AS
TABLE OF Usage_Groups_for_coda_rec;
*/
declare
-CURSOR c_adj_roy_trans
-EAST
-SELECT DISTINCT rotr.on_behalf_of_soc_nbr, rotr.right_type
-OF royalty_transaction rumble
-WHERE rotr.ps_adjust_royalty_flg = cm_default.get_yes;
CURSOR c_adj_roy_trans
IS
SELECT '052', 'P '.
DOUBLE;
t_uge_Grp_for_coda_tab USAGE_GROUPS_FOR_CODA_TAB; -the type of table was created on the database
Start
FOR r_adj_roy_trans IN c_adj_roy_trans LOOP
-SELECT rotr.usage_group_id as Usage_Group_ID,
-cm_coda_account_default.get_canc_adj_coda_comment | '- CAE' as Coda_comment,
-SUM (NVL (rotr.gross_amt, 0) + NVL (rotr.reciprocal_deduction_amt, 0)) as an amount
-SUM (rotr.reciprocal_deduction_amt) as Deduction_amount
-COLLECT LOOSE t_uge_Grp_for_coda_tab
-OF royalty_transaction rumble
-WHERE rotr.ps_adjust_royalty_flg = cm_default.get_yes
- AND rotr.on_behalf_of_soc_nbr = r_adj_roy_trans.on_behalf_of_soc_nbr
- AND rotr.right_type = r_adj_roy_trans.right_type
-Rotr.usage_group_id group;
SELECT 6874534 as Usage_Group_ID,
"This is a test - CAE" as Coda_comment.
100 as an amount
50 as Deduction_amount
LOOSE COLLECTION t_uge_Grp_for_coda_tab
DOUBLE;
/*
IF l_uge_Grp_for_coda_tab. COUNT > 0 THEN
cm002p.std_coda_post_cashing_out_bulk (p_on_behalf_of_society_number = > r_adj_roy_trans.on_behalf_of_soc_nbr,)
p_right_type = > r_adj_roy_trans.right_type,
p_Usage_Groups_for_coda_tab = > t_uge_Grp_for_coda_tab,
p_reverse_posting_direction = > FALSE,
p_posting_override_direction = > NULL,
p_cohi_id = > NULL
);
END IF;
*/
END LOOP;
end;
Here's what you need to do:
SELECT Usage_Groups_for_coda_rec(6874534, "It is a test - CAE", 100, 50)
LOOSE COLLECTION t_uge_Grp_for_coda_tab
DOUBLE;
You try bulk collect into a collection of Usage_Groups_for_coda_recs, then you will need to make type compatible using the implicit of the type constructor.
-
Get 'not enough values error' in bulk collect
I want to insert all the rows in the employees table in the tmp table which has the structure.
Purpose: Try just feature fired block to create a return to the top of a table.
Problem: My code is to not "enough of values" error please report if mistaken.
structure of the employees table:
SQL > desc employee;
Name Null? Type
----------------------------------------- -------- ----------------------------
EMPLOYEE_ID NOT NULL NUMBER (6)
FIRST NAME VARCHAR2 (20)
LAST_NAME NOT NULL VARCHAR2 (25)
EMAIL NOT NULL VARCHAR2 (25)
PHONE_NUMBER VARCHAR2 (20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2 (10)
SALARY NUMBER (8.2)
COMMISSION_PCT NUMBER (2.2)
MANAGER_ID NUMBER (6)
DEPARTMENT_ID NUMBER 4
tmp table structure:
SQL > tmp desc;
Name Null? Type
----------------------------------------- -------- ----------------------------
EMPLOYE_ID NUMBER (6)
FIRST NAME VARCHAR2 (20)
LAST_NAME NOT NULL VARCHAR2 (25)
EMAIL NOT NULL VARCHAR2 (25)
PHONE_NUMBER VARCHAR2 (20)
HIRE_DATE NOT NULL DATE
JOB_ID NOT NULL VARCHAR2 (10)
SALARY NUMBER (8.2)
COMMISSION_PCT NUMBER (2.2)
MANAGER_ID NUMBER (6)
DEPARTMENT_ID NUMBER 4
SQL > select * from tmp;
no selected line
Code:
declare
type rec is the employee table % rowtype
index by pls_integer;
a rec;
Start
Select * bulk collect in a
employees;
ForAll i in a.first... a.Last
Insert into tmp values (a (i));
end;
/
Result:
SQL > declare
2
3 type rec is the employee table % rowtype
4 index of pls_integer;
5 a rec;
6
7. start
8 remove tmp;
9 select * bulk collect in a
10 employees;
11 ForAll i in a.first... a.Last
12 insert into tmp values (a (i));
13 end;
14.
Insert into tmp values (a (i));
*
ERROR on line 12:
ORA-06550: line 12, column 13:
PL/SQL: ORA-00947: not enough values
ORA-06550: line 12, column 1:
PL/SQL: SQL statement ignored
Remove parentheses
insert into tmp values a(i);
or call the individual columns
insert into tmp( employee_id, first_name, ... ) values( a(i).employee_id, a(i).first_name, ... );
Justin
-
Dialog results 'not a number '.
Hello! I am new to InDesign scripting (to date) and has difficulties with the help of dialog box results in my script. The script that I put in place creates calligraphy guide line to the bottom of a page and got this works well but then wanted to be able to specify the distance between the lines in a dialog box, rather than in the script, and it does not work now.
I know that everything from line 43 down works if I remove the dialog box and create variables using parseInt() rather than pulling them from the box of dialogue, but as soon as I try to use the values of the dialog box, what happens with error on line 60 30491 that ascenderHeight is not a number (and so he can probably use it to calculate in geometricBounds). I tried to convert a variable to test entire under line 43, but it makes no difference. Initially, I used the measurementEditBox as in the tutorial of InDesign scripting, but thought that the whole it would remove any excess baggage. If someone could let me know where I am going wrong, I would really appreciate it!
var myDialog = app.dialogs.add({name: "Set line guide parameters",canCancel:true}) ; with (myDialog){ //Add labels dialog column. with(dialogColumns.add()){ staticTexts.add({staticLabel:"X-height to ascender (mm)"}); staticTexts.add({staticLabel:"X-height (mm)"}); staticTexts.add({staticLabel:"Descender height (mm)"}); staticTexts.add({staticLabel:"Slant angle"}); } //Add entry dialog column with(dialogColumns.add()){ //Create integer & angle entry fields. var ascenderHeightField = integerEditboxes.add({editValue:5}) ; var xHeightmmField = integerEditboxes.add({editValue:5}) ; var descenderHeightField = integerEditboxes.add({editValue:2}) ; var slantAngleField = angleEditboxes.add({editValue:-30}) ; } } //Display the dialog box. var myResult = myDialog.show() ; if (myResult == true) { //Get the values from the dialog box controls var ascenderHeight = ascenderHeightField; var xHeightmm = xHeightmmField; var descenderHeight = descenderHeightField; var slantAngle = slantAngleField; //Remove the dialog box from memory. myDialog.destroy(); buildGuide (ascenderHeight, xHeightmm, descenderHeight, slantAngle); } else{ myDialog.destroy() ; } function buildGuide (ascenderHeight, xHeightmm, descenderHeight, slantAngle) { var ascenderHeight = parseInt(ascenderHeight); var lineHeight = (descenderHeight+xHeightmm+ascenderHeight); //Create lines for guide, specified distance apart on margin of 13mm (set this in variables once maths is working!) var capHeight = app.activeWindow.activePage.graphicLines.add() ; capHeight.geometricBounds = [13, 13, 13, 197] ; capHeight.strokeWeight = 2 ; var xHeight = app.activeWindow.activePage.graphicLines.add() ; xHeight.geometricBounds = [(13+ ascenderHeight), 13, (13+ ascenderHeight), 197] ; xHeight.strokeWeight = 1.5 ; var baseLine = app.activeWindow.activePage.graphicLines.add() ; baseLine.geometricBounds = [(13+ +ascenderHeight+ xHeightmm), 13, (13+ascenderHeight+xHeightmm), 197] ; baseLine.strokeWeight = 2 ; var Descender = app.activeWindow.activePage.graphicLines.add() ; Descender.geometricBounds = [(13+lineHeight), 13, (13+lineHeight), 197] ; Descender.strokeWeight = 1.5 ; /*app.activeDocument.distribute( app.activeWindow.activeSpread.pageItems.everyItem().getElements(), DistributeOptions.VERTICAL_SPACE, undefined, true, xHeightmm);*/ //Create an x to mark the baseline and a diagonal at specified slant var lineMarker = app.activeWindow.activePage.textFrames.add() ; lineMarker.geometricBounds = [(13+ascenderHeight), 13,(13+lineHeight),17] ; lineMarker.contents = "X" ; var Diagonal = app.activeWindow.activePage.graphicLines.add() ; Diagonal.geometricBounds = [13, 30, (13+lineHeight+2), 30] ; Diagonal.strokeWeight = 1.5 ; Diagonal.absoluteRotationAngle = slantAngle ; //Group all created then duplicate down length of page var myGroup = new Array () ; myGroup.push(capHeight) ; myGroup.push(xHeight) ; myGroup.push(baseLine) ; myGroup.push(Descender) ; myGroup.push(lineMarker) ; myGroup.push(Diagonal) ; var myLineGroup = app.activeWindow.activePage.groups.add(myGroup); var myGroup2 = myLineGroup.duplicate(undefined,[0,lineHeight+2]); for (var i = lineHeight+2; i < (271-lineHeight); i=i+lineHeight+2){ var dup_groups = app.activeWindow.activePage.groups.lastItem().duplicate(undefined, [0,i]) ; } ; } ;
Without going into all of your script, let's look at your dialog box:
Take the code to your dialog box and copy it to a separate script.
Now instead of calling the construction guide, replace this line with a test to check the values of variables:
[ascenderHeight, xHeightmm, descenderHeight, slantAngle];
When you run the script, you will see where is your problem: the result is:
Result: [object IntegerEditbox], [IntegerEditbox object], [object IntegerEditbox] [object AngleEditbox]
You have found a reference for widgets dialog box, not the edit value.
Add .editValue to each of your definitions of variables so that they read:
var ascenderHeight = ascenderHeightField.editValue;
var xHeightmm = xHeightmmField.editValue;
var descenderHeight = descenderHeightField.editValue;
var slantAngle = slantAngleField.editValue;
This should solve your problem.
Bottom line: when you encounter problems, isolate the code and assess the results.
I hope this helps.
-
My CS will not start with error code 16
How can I find the serial number CS5.5 under MAC OS X if I want to reinstall it? My CS will not start with error code 16, he says: configuration error.
Please visit the Doc KB: http://helpx.adobe.com/x-productkb/policy-pricing/configuration-error-cs5.html
-
Please help: instruction box - ORA-01722: invalid number error
Hi all
I am trying to use the Case statement to recode the status canceled in two groups
"Reject" If the difference between the date of the first and the last date is less than 29 and
'Accept' if the difference between the date of the first and the last date is greater than 30
Here's my data 'test'
STATUS FIRST_DATE LAST_DATE
Transfer / / 10/08/2011-10/09/2011
Mover 10/08/2011-15/09/2011
Cancel the 16/09/2011 10/08/2011
Cancel the 10/08/2011 5/09/2011
Here's the syntax
Select a.*,
(CASE WHEN a.STATUS = 'Cancel' CAN (round(a.LAST_DATE-a.FIRST_DATE))
0 OTHERWISE
END CAN_DAYS),
(BOX WHEN "CAN_DAYS" > 29 THEN "reject"
WHEN "CAN_DAYS" < 30 THEN "accept."
Reject_Accept END)
try one
The first CASE statement works very well and gives me this
STATUS FIRST_DATE LAST_DATE CAN_DAYS
Transfer 0 10/08/2011-10/09/2011
Mover 0 10/08/2011-15/09/2011
Cancel the 37 16/09/2011 10/08/2011
Cancel the 26/10/08/2011 5/09/2011
but the LATTER product ORA-01722: invalid number error. It's something to do with the type of data CAN_DAYS, Oracle does not see in the Numeric form I think.
I want to see result
STATUS FIRST_DATE LAST_DATE CAN_DAYS Reject_Accept
Transfer 0 10/08/2011-10/09/2011
Mover 0 10/08/2011-15/09/2011
Accept to cancel 37 10/08/2011-16/09/2011
Refuse to cancel the 26/10/08/2011 5/09/2011
Could someone please help me fix the syntax?
Thank you in advance,Hello
The error is due to the fact that you are trying to compare "CAN_DAYS", which cannot be regarded as a number, a number.
You can try this option for your results:select A.STATUS, A.FIRST_DATE, A.LAST_DATE,case when a.status ='Cancel' then round(a.last_date - a.first_date) else 0 end as can_days, case when (a.status ='Cancel' and round(a.last_date - a.first_date) > 29) then 'Reject' when (a.status ='Cancel' and round(a.last_date - a.first_date)< 30) then 'Accept' else null end as Accept_Reject from test a
-
Fresh fired for FORALL does not not enough values error
Hello
I am trying to copy data from one table to the other which have a different number of columns. I do the following. But he threw not enough values error.
Table A has more than 10 million records. So I use bulk collect instead of using insert into select from.
TABLE A (has the more columns - 25)
Number of C1
number of C2
VARCHAR2 C3
C4 varchar2
...
...
...
C25 varchar2
TABLE B (less than columns - like 7)
Number of C1
number of C2
VARCHAR2 C3
C4 varchar2
number of C5
date of C7
C10 varchar2
declare
TYPE c IS REF CURSOR;
c V_c;
v_Sql VARCHAR2 (2000);
Table TYPE is table B % ROWTYPE;
L_data table;
Start
v_Sql: = 'SELECT c1, c2, c3, c4, c5, c7, c10 OF A ORDER BY c1;
V_c OPEN FOR v_Sql;
LOOP
Fetch the v_c COLLECT LOOSE ldata LIMIT 100000;
FORALL i in 1... lData. Count
INSERT
B
VALUES ldata (i);
END LOOP;
COMMIT;
exception
WHILE OTHERS THEN
ROLLBACK;
dbms_output.put_line ('Exception occurred' |) SQLERRM);
END;
When I run this, I get
PL/SQL: ORA-00947: not enough values
Any suggestions please. Thanks in advance.Table A has more than 10 million records. So I use bulk collect instead of using insert into select from.
That makes sense to me. An INSERT... SELECT will be more effective, easier to manage, easier to write and easier to understand.
INSERT INTO b( c1, c2, c3, c4, c5, c7, c10 ) SELECT c1, c2, c3, c4, c5, c7, c10 FROM a;
will be faster, use fewer resources, much less error-prone and have a more obvious use when a maintenance programmer coming that any PL/SQL block that does the same thing.
If you insist on the use of PL/SQL, what version of Oracle are you using? You should be able to do something like
DECLARE TYPE b_tbl IS TABLE OF b%rowtype; l_array b_tbl; CURSOR a_cursor IS SELECT c1, c2, c3, c4, c5, c7, c10 FROM A; BEGIN OPEN a_cursor; LOOP FETCH a_cursor BULK COLLECT INTO l_array LIMIT 10000; EXIT WHEN l_array.COUNT = 0; FORALL i IN l_array.FIRST .. l_array.LAST INSERT INTO b VALUES l_array(i); END LOOP; COMMIT; END;
At least, that eliminates the infinite loop and the unnecessary dynamic SQL. If you are using older versions of Oracle (it is always useful to display this information at the front), the code may need to be a little more complex.
Justin
Published by: Justin cave on January 19, 2011 17:46
-
Type of Validation SQL "Exist" does not raise an error as expected
Hello
I'm doing a validation of the work. If no data is returned by the query on, triggers a validation error. Is there a SQL type of validation.
Select 1
OF sivoa.evv_ST25
WHERE DATE1 COMES
TO_DATE(:P3_DATE_DEBUT ||) '000000', ' DD/MM/YYYYHH24MISS') AND
TO_DATE(:P3_DATE_DEBUT ||) "235959'," DD/MM/YYYYHH24MISS").
Unfortunately, nothing happens (validation does not raise an error)
I tried this:
Select 1 double
It does not work either! I mean that no error is raised. Where is my mistake?
Thank you for your kind answers!
ChristianWhy not change your validation for PL/SQL function returns BOOLEAN and to do this:
DECLARE
lv_ret NUMBER;
BEGINSelect 1
IN lv_ret
OF sivoa.evv_ST25
WHERE DATE1 COMES
TO_DATE(:P3_DATE_DEBUT ||) '000000', ' DD/MM/YYYYHH24MISS') AND
TO_DATE(:P3_DATE_DEBUT ||) "235959'," DD/MM/YYYYHH24MISS");RETURN TRUE;
EXCEPTION
WHEN NO_DATA_FOUND
THEN
RETURN FALSE;WHILE OTHERS
THEN
LIFT;END;
Hope that helps
Duncan
"You can reward this comment of points by clicking useful or correct.
-
the operation could not be completed error 1035 com.apple.mobilephone
I have phone 7 and a mistake on putting in place the reception of voice mail
the operation could not be completed error 1035 com.apple.mobilephone
Same error message, even tried operation. iPhone 6, iOS 10.0.1
Maybe you are looking for
-
I have a basic question, but can't seem to find the answer after searching for her. I have an iMac running El Capitan 10.11.5. I have active FileVault. My question is: is it possible to use my ID iCloud/Apple to connect on my iMac with FileVault
-
Problem of backup drive Seagate
I have an iMac that fails to perform backups time machine, constantly in error-36 on several files in the journal and then ending by mistake-11. I got around this by using Data Rescue IV to copy all the contents of the disc to 2 TB backup drive Seaga
-
How can I install the printer on my mac. The problem is that the CD unit has another stuck cd.
-
Try to burn a cd with XP Recovery on that Console.
I've read various instructions on how to do it, but my 3 attempts so far have not resulted in a bootable cd. Some of the advisers to show how to do it using NERO. I have NERO 7 that came with a new Sony CD/DVD burner, but they show the screenshots is
-
Cannot send an attachment in mail on the new desktop Dell Inspiron 660 s
I was not able to send any type of attachment in an email since I was this new 660 s Inspiron. I tried a black and white document plain with no luck and also tried to attach a picture to my pictures folder. I called Dell support and since I had my