Ordering the records prior to select
I have a table 'orderlines' with columns line_id, ship_flag, service_flag, bom_order.
I need to generate the order line number in the following way
select the orderlines order by bom_order
for the first line the line number is 1.0
for the next line if ship_flag is 'Y' then line_number is 1.1 else the line number is 2.0
for the next line if the previous line ship_flag was ' Y' and service_flag is 'Y' then line number is 1.1.1 else
if ship_flag is 'Y' then line number is 1.2, else 3.0
so we have a package UTIL and function get_number where there is a global variable to capture the previous numbers (line number, ship number and service number) and based on the flag increment appropriate number and generate the line number as varchar2.
I create a view
create or replace view order_with_lineno is
select line_id,
util.get_number(ship_flag, service_flag) as line_number,
from orderlines order by bom_order;
This view doesnot give me the correct line_number, becaue the sorting happen after the line_number generation is done.
can someone give me a solution for this?
This is making some assumptions about how your flags are set, but if the data looks like the following, you can use a query for this:
create table orderlines
bom_order number,
line_id number,
ship_flag varchar2(1),
service_flag varchar2(1)
delete from orderlines;
insert into orderlines values (1000,10,'N','N');
insert into orderlines values (1000,20,'Y','N');
insert into orderlines values (1000,30,'N','Y');
insert into orderlines values (1000,40,'N','Y');
insert into orderlines values (1000,50,'Y','N');
insert into orderlines values (1000,60,'N','Y');
insert into orderlines values (1000,70,'N','Y');
insert into orderlines values (1000,80,'N','Y');
insert into orderlines values (2000,10,'N','N');
insert into orderlines values (2000,20,'Y','N');
commit;
SELECT bom_order,
line_id,
l1||'.'||l2||decode(l3,0,'','.'||l3) new_line_id
FROM (
SELECT bom_order,
line_id,
l1,
l2,
sum(decode(service_flag,'Y',1,0)) OVER (PARTITION BY bom_order,l2 ORDER BY line_id ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) l3
FROM
SELECT bom_order,
line_id,
service_flag,
dense_rank() OVER (ORDER BY bom_order) l1,
sum(decode(ship_flag,'Y',1,0)) OVER (PARTITION BY bom_order ORDER BY line_id ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) l2
FROM orderlines
BOM_ORDER LINE_ID NEW_LINE_ID
1000 10 1.0
1000 20 1.1
1000 30 1.1.1
1000 40 1.1.2
1000 50 1.2
1000 60 1.2.1
1000 70 1.2.2
1000 80 1.2.3
2000 10 2.0
2000 20 2.1Greg Pike
http://www.singlequery.com
Message was edited by:
gfpike
Had a raw data error.
Similar Messages
-
Checkbox taking all the records irrespective of selection
HI All,
This is my code
for i in 1..htmldb_application.g_f02.count
loop
insert into nam values(htmldb_application.g_f02(i));
end loop;
Here i'm trying to insert the selected things but its taking all the records whatever is displaying in the report
Kindly help me to get rid of the issue
And guide me how cai insert only checked in recordshi
I'm not a pro but maybe I can share some experience.
First I would create a textfield for debugging.
This helps to find out what data you are really working with.
My textfield's name is "PX_SELECTED_ITEMS"
I filled the textbox with a process in "On submit - After Computations and Validations"
BEGIN
:PX_SELECTED_ITEMS :=
HTMLDB_UTIL.TABLE_TO_STRING(HTMLDB_APPLICATION.G_F01);
END;I'm not sure how your values are seperated.
In my application I hat to replace the seperator from ':' to ','
Therefore I created another textfield "PX_SELECTED_ITEMS_replaced"
and added following code to the process:
:PX_SELECTED_ITEMS_replaced := replace(:PX_SELECTED_ITEMS,':',',');Now I have two textfields wich should contain your selection.
The second one ("PX_SELECTED_ITEMS_replaced") with the comma seperated data should be good for a "where-filter" in an SQL statement.
Here is the PL-SQL-syntax I used for a standard SQL report:
declare
v_sql varchar2(32767);
begin
v_sql := 'select * from my_table';
if :PX_SELECTED_ITEMS_replaced is not null then
v_sql := v_sql ||' where My_ID in ('||:PX_SELECTED_ITEMS_replaced||')';
else
v_sql := v_sql ||' where 1=0';
end if;
return v_sql;
end;This Report should contain your selected items.
Note: This does NOT work with Interacive Reports.
I hope this helps you finding the issue.
Edited by: pAT on Nov 26, 2010 4:45 AM -
Need to process the records that are selected using checkbox in an ALV
Hi ..
I am displaying some data in an ALV using the Parent-child relation, the parent records has a check box which is input enabled.
On click of a button on the toolbar, i need the checked records to be fetched and processed.
Please help me on how to fetch the records that are checked..
Thanks,
DerekHello Derek,
Is ALV created using OOPS or using conventional FM?
If you are making use of OOPS technique, then call this method:
CALL METHOD <grid_name>->get_selected_rows.
BR,
Vishal. -
Designating a Record as a BIND Record for Population Selection Use
Hi All,
I am working on a population selection custom process, but I have hit a fork in the road because of the fact that I do not know how PeopleSoft actually recognizes a Bind records as a Bind record. Meaning I have created the record, but Population Selection does not recognize it as pop select type bind record. Thus, I am currently forced to use one of the delivered record even though the record is not really associated with my process.
Does anyone have any ideas about how I can associate a custom record with Population Selection?
Thanks.Matt, you can set a form parameter to the domain value and use it in your record
group query:
SELECT rv_id,
rv_descn
FROM curr_refval
WHERE rv_domain = :Parameter.domainParameters are not affected by clear_block and clear_form operations, so I like them
better for use as bind variables for SQL issued from within a form.
Using a database package variable is a pain, since you cannot access them directly
from Forms. You would have to create the package with the variable, then create a
function or procedure call in the package that would set the variable.
I sure wish you would fix that long Ask Tom link so the text in this thread
would word-wrap properly -
Retrieve the Purchase Order Condition Records Table
Hallo!
I have found this code right here:
http://www.sap-basis-abap.com/sapab025.htm
It is very useful particular for purposes which I need. Please can somebody
try to fix the error to get it working. There is an internal table missing.
Regards
Ilhan
Retrieve the Purchase Order Condition Records Table
select * from ekko.
select * from konv where knumv = ekko-knumv
"Get all the condition records for the purchase order
endselect.
endselect.
* Get the info record conditions record
* First declare the record structure for the key
data: begin of int_konp,
txt1(5),
lifnr(5),
matnr(18),
txt2(4),
txt3(1),
end of int_konp.
clear: konh, konp, int_konp.
* data for the record key konh-vakey
int_konp-txt1 = '00000'.
int_konp-lifnr = ekko-lifnr+5(5).
int_konp-matnr = ekpo-matnr(18).
int_konp-txt2 = 'ALL'.
int_konp-werks = ekpo-werks.
int_konp-txt3 = '0'.
select * from konh where kschl = 'PB00' "Conditions (Header)
and datab => p_datum. "valid from date
if konh-vakey = int_konp. "Conditions (Item)
select single * from konp where knumh = konh-knumh.
continue.
endif.
endselect.Hi flora
Just get through the sequence .
see the table fields ...
1. From EKKO table take an entry which is having pricing conditions.
Now in the fields list check out for field EKKO-KNUMV(document condition number).
2.Take this condition number and now goto table KONV.
Give the document condition number in the field KONV-KNUMV and execute .
This will lead to a list of document condition numbers and some other fields .
3.Now check for field KONV-KNUMH ,KONV-KAWRT(quantity) and note the value KONV-KWERT .
(Remember this is at header level).
This is ur condition record number.
**comments
Now from document condition number we got the condition record number (KNUMH).
4. now since u want the item level tax procedure go to table KONP and give the condition record number and execute .
This will give u a list of details .
Now concentrate on KONV-KAWRT (scale quantity) KONP-KBETR(rate) as this table will store Pricing per UNIT so product of these two will give u the total pricing tax, for a particular condition type say PR00 .
For that particular condition item .
Check the pricing procedure .
See t-code VK13 and check the pricing procedure .
From me23 check the same PO num select the item and check the pricing conditions applicable .
Select a particular pricing and goto condition->analysis->analysis pricing ,
Better take help of a SD functional consultant in the process.
regards,
vijay. -
Order of records in o/p of select statement
Hi all
I have doubt regarding the select statement. I need to execute a select statement (with out any order ie with out "order by") which searchs a table. I want to know whether in any
circumstances the order of the records of the select statement is different.
sample select statement which I need to execute
select emp_no from emplyees where designation = 'programer'
in one word order of records of in the o/p of a select statement will be unique ?
(provided same query same, table,)
can u plz quote the link to get more information
regards
RenjithHi,
YES, you can
Do Order By Without Using Order By Clause
in your select statement.
I assume that you have unique data ( e.g. emp_no in Emp Table ) and you you do not want to use Order by clause.
Solution 1:
Select Emp_no
from Emp
group by Emp_no;
the o/p will be in the sorted in the Ascending order.
Solution 2: ( Only for columns holding Numeric Values )
Select Emp_No
From Emp
Where 99999 - Emp_no in ( Select 99999 - Emp_no from Emp );
Again this will sort the result will be in the Descending Order. you can use any big number instead of 99999 but it should be greater than Emp_no value.
Note: You Should only use this method on not very large tables coz of performance issue.
Hope this will solve your problem.
Any Comment on this, any body.
Thanks and Regards
There is always a solution to the problem, And if there is no solution of a problem then problem is not a problem. -
Select most recent record prior to a target date
Let's say I have a set of unique records with the following dates:
11/15/08
11/30/08
Is it possible to select only the most recent record prior to a user-entered target date (e.g., 12/1/08)? So in this case, only the record dated 11/30/08 would be selected for the report.Use the record selection formula like this
{Date field}<={?Date Parameter}
And also wrtite the group selection formula like this
{Date field}=maximum({Date field})
This returns the recent value nearer to the date entered in the prompt.
Regards,
Raghavendra -
Limit the records return by a select query
I have select query as follows
select id,name,designation from emlpoyyee;
it is returning 20 rows.Is there any way to limit the records from a range to another range. eg -first 10 records. or 10-20 records e.t.c
Thanks for any helpFor the case of first 10 or 20 row u can use
select * from <table> where rownum <=<number>;
select * from emp where rownum <=20;
For the case of 10-20 record of something of range , there need to use partition on select as :
select * from ( select <your_columnns1>, <your_columnns2>, row_number() over (partition by null order by null) sequence from <your_table>) where sequence between <lower_limit> and <upper_limit>;
select * from ( select empno, empname row_number() over (partition by null order by null) sequence from emp) where sequence between 10 and 20;
Try it and reply in case of any issue. -
Reading the record and displaying when u select it using checkbox
hi,
how to read the particilar record and display it in a popup screen when u select it using checkbox and then press 'DISP' button in alv(normal alv not with oops concepts).
like i select a row which is checked (checkbox) it and i have to read that particular record and display (value of keyfield say vbeln) details in a popup screen.hi,
go through the faloowing code.
this for normal popup.
*& Report ZGS_ALV_POPUP_2_SELECT
REPORT ZGS_ALV_POPUP_2_SELECT.
TYPE-POOLS: slis.
PARAMETERS: p_title TYPE sy-title default 'Sales Document:item data'.
DATA: itab TYPE vbap OCCURS 0 WITH HEADER LINE,
selfield TYPE slis_selfield.
START-OF-SELECTION.
SELECT *
FROM vbap
INTO TABLE itab
UP TO 20 ROWS.
CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
EXPORTING
i_title = p_title
* I_SELECTION = 'X'
I_ZEBRA = 'X '
* I_SCREEN_START_COLUMN = 0
* I_SCREEN_START_LINE = 0
* I_SCREEN_END_COLUMN = 0
* I_SCREEN_END_LINE = 0
* I_CHECKBOX_FIELDNAME =
* I_LINEMARK_FIELDNAME =
* I_SCROLL_TO_SEL_LINE = 'X'
i_tabname = 'ITAB'
i_structure_name = 'VBAP'
* IT_FIELDCAT =
* IT_EXCLUDING =
* I_CALLBACK_PROGRAM =
* I_CALLBACK_USER_COMMAND =
* is_private =
IMPORTING
es_selfield = selfield
* e_exit =
TABLES
t_outtab = itab
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
MESSAGE i000(8I) WITH sy-subrc.
ENDIF.
WRITE:
/ 'Table Index : ', 20 selfield-tabindex,
/ 'Table Name : ', 15 selfield-tabname,
/ 'Field Name : ', 15 selfield-fieldname,
/ 'Table-Field : ', 15 selfield-sel_tab_field,
/ 'Field Value : ', 15 selfield-value.
the falowing code is for how to put checkbox and how to display the selected recods.you combine both codes.
*& Report ZRP_SALES
REPORT ZRP_SALES NO STANDARD PAGE HEADING.
DATA: TEMP_DATE_STR TYPE STRING.
*DATA: TEMP_NETP LIKE VBAK-NETWR.
DATA: TEMP_NETWR(10).
*DATA: TEMP_VBELN LIKE VBAK-VBELN.
DATA: CHECK TYPE C VALUE ' '.
*DATA: WA_VBELN LIKE VBAK-VBELN.
DATA: TEMP_DATE LIKE VBAK-ERDAT.
*DATA: TEMP_NETP_STR TYPE STRING.
DATA:FNAM(20), FVAL(20).
TYPES: BEGIN OF MY_VBAK,
VTWEG TYPE VTWEG,
VKORG TYPE VKORG,
SPART TYPE SPART,
NETWR TYPE NETWR_AK,
VBELN TYPE VBELN_VA,
ERDAT TYPE ERDAT,
END OF MY_VBAK.
DATA: IT_VBAK TYPE MY_VBAK OCCURS 0 WITH HEADER LINE.
DATA: WA_VBAK TYPE MY_VBAK.
DATA: V_VBELN TYPE VBELN,
V_ERDAT TYPE ERDAT.
SELECT-OPTIONS:S_VBELN FOR V_VBELN,
S_ERDAT FOR V_ERDAT.
AT SELECTION-SCREEN.
*Check for Sales Order number to be non-initial.
IF S_VBELN IS INITIAL.
*Checking for Date to be non-nitial.
IF S_ERDAT IS INITIAL.
MESSAGE E003(ZRP_MSG). " Please enter either SO number or Date.
ELSE.
*Validating the right low values for Date select option
SELECT SINGLE ERDAT
FROM VBAK INTO TEMP_DATE
WHERE VBELN EQ S_VBELN-LOW OR ERDAT EQ S_ERDAT-LOW.
IF SY-SUBRC NE 0.
MESSAGE E004(ZRP_MSG).
ENDIF.
*Validating the right high values for Date select option
SELECT SINGLE ERDAT
FROM VBAK INTO TEMP_DATE
WHERE ERDAT EQ S_ERDAT-HIGH OR VBELN EQ S_VBELN-HIGH.
IF SY-SUBRC NE 0.
MESSAGE E005(ZRP_MSG).
ENDIF.
ENDIF.
ELSE.
*Checking for Date to be non-nitial.
IF S_ERDAT IS NOT INITIAL.
MESSAGE E003(ZRP_MSG). " Please enter either SO number or Date.
ENDIF.
*Validating the right low values
SELECT SINGLE VBELN
FROM VBAK INTO S_VBELN
WHERE VBELN EQ S_VBELN-LOW.
IF SY-SUBRC NE 0.
MESSAGE E001(ZRP_MSG).
ENDIF.
*Validating the right high values
IF S_VBELN-HIGH IS NOT INITIAL.
SELECT SINGLE VBELN
FROM VBAK INTO S_VBELN
WHERE VBELN EQ S_VBELN-HIGH.
IF SY-SUBRC NE 0.
MESSAGE E002(ZRP_MSG).
ENDIF.
ENDIF.
ENDIF.
START-OF-SELECTION.
*First Screen.
SET PF-STATUS 'DISP'.
IF S_VBELN IS NOT INITIAL.
SELECT VTWEG VKORG SPART NETWR VBELN ERDAT
FROM VBAK
INTO TABLE IT_VBAK
WHERE VBELN IN S_VBELN.
ENDIF.
IF S_ERDAT IS NOT INITIAL.
SELECT VTWEG VKORG SPART NETWR VBELN ERDAT
FROM VBAK
INTO TABLE IT_VBAK
WHERE ERDAT IN S_ERDAT.
ENDIF.
SORT IT_VBAK BY VKORG VTWEG SPART.
END-OF-SELECTION.
LOOP AT IT_VBAK.
MOVE IT_VBAK-NETWR TO TEMP_NETWR.
MOVE IT_VBAK-ERDAT TO TEMP_DATE.
WRITE:/6 CHECK AS CHECKBOX.
FORMAT COLOR 1.
WRITE: IT_VBAK-VBELN UNDER 'SALES ORDER NO.' .
WRITE: IT_VBAK-ERDAT UNDER 'DATE'.
FORMAT COLOR OFF.
FORMAT COLOR 2.
WRITE: TEMP_NETWR UNDER 'NET PRICE'.
FORMAT COLOR OFF."TEMP_NETWR,
FORMAT COLOR 3.
WRITE:IT_VBAK-VKORG UNDER 'SALES ORG',
IT_VBAK-VTWEG UNDER 'DIST CHANNEL',
IT_VBAK-SPART UNDER 'DIVISION'.
FORMAT COLOR OFF.
SKIP 1.
*FOR SUBTOTALS
AT END OF SPART.
SUM.
FORMAT COLOR 5.
WRITE:/6 'SUB TOTOAL OF NET PRICE IS : '.
WRITE: 32 IT_VBAK-NETWR CURRENCY 'INR'.
FORMAT COLOR OFF.
SKIP 2.
ENDAT.
*FOR GRAND TOTALS
AT LAST.
SUM.
FORMAT COLOR 6.
WRITE:/6 'GRAND TOTOAL OF NET PRICE IS : ',
32 IT_VBAK-NETWR CURRENCY 'INR'.
FORMAT COLOR 6.
ENDAT.
ENDLOOP.
TOP-OF-PAGE.
FORMAT COLOR 6.
WRITE:/8 'SALES ORDER NO.',
27 'DATE',
42 'NET PRICE',
57 'SALES ORG',
70 'DIST CHANNEL',
87 'DIVISION'.
FORMAT COLOR OFF.
SKIP 1.
*WHEN SALES ORDER IS SELECTED
AT LINE-SELECTION.
CASE :SY-LSIND.
WHEN '2'.
GET CURSOR FIELD FNAM VALUE FVAL.
IF FNAM <> 'WA_VBAK-VBELN'.
MESSAGE E006(ZRP_MSG).
ELSE.
SET PARAMETER ID 'MAT' FIELD FVAL.
CALL TRANSACTION 'MM02' AND SKIP FIRST SCREEN.
ENDIF.
ENDCASE.
*WHEN CLICKED ON PUSH BUTTON IN THE APPLICATION BAR
AT USER-COMMAND.
CASE:SY-UCOMM.
WHEN 'DISP'.
DO.
CLEAR CHECK.
CLEAR: WA_VBAK,TEMP_DATE_STR.
READ LINE SY-INDEX FIELD VALUE CHECK
IT_VBAK-VTWEG INTO WA_VBAK-VTWEG
* IT_VBAK-NETWR INTO TEMP_NETP_STR
IT_VBAK-VBELN INTO WA_VBAK-VBELN
IT_VBAK-ERDAT INTO TEMP_DATE_STR
IT_VBAK-VKORG INTO WA_VBAK-VKORG
IT_VBAK-SPART INTO WA_VBAK-SPART.
IF SY-SUBRC <> 0.
EXIT.
ELSEIF CHECK = 'X'.
FORMAT COLOR 1.
WRITE: 8 WA_VBAK-VBELN HOTSPOT. "UNDER 'SALES ORDER NO'
WRITE: 25 TEMP_DATE_STR." UNDER 'DATE'.
FORMAT COLOR OFF.
* FORMAT COLOR 2.
* WRITE: 44 TEMP_NETP_STR." UNDER 'NET PRICE'.
* FORMAT COLOR OFF.
FORMAT COLOR 3.
WRITE:44 WA_VBAK-VKORG," UNDER 'SALES ORG',
59 WA_VBAK-VTWEG," UNDER 'DIST CHANNEL',
72 WA_VBAK-SPART." UNDER 'DIVISION'.
FORMAT COLOR OFF.
SKIP 1.
ENDIF.
ENDDO.
ENDCASE.
TOP-OF-PAGE DURING LINE-SELECTION.
CASE:SY-LSIND.
WHEN 1.
FORMAT COLOR 6.
WRITE:/8 'SALES ORDER NO.',
25 'DATE',
* 44 'NET PRICE',
44 'SALES ORG',
58 'DIST CHANNEL',
72 'DIVISION'.
SKIP 1.
FORMAT COLOR OFF.
<b>if helpful reward some points.</b>
Message was edited by:
suredarreddy pulimamidi -
I upgraded to yosemite and iOS 8 in order to record with quicktime. But when I select Record a new movies I immediately get an Operation Could not be completed error. When I choose record audio or screenshots, I get a little further, but as soon as I select my ipad as the source I get the same error message.
You don't need to be a developer for this to work. I get the same error. Just one more thing on the list that make me upset more and more with Apple. Things just don't work out of the box like they used to.
This new feature was to be included with iOS 8 and Yosemite. -
How to delete the record in the table without using lead selection?
hi,
I have added the separate column "delete" to the table uielement and so for each record or row of the table the appropriate "delete" link to action will be there................the code below works when the particular row is selected through lead selection only.......
help me how to delete without using lead selection.....
DATA:
NODE_MODULE TYPE REF TO IF_WD_CONTEXT_NODE,
ELEM_MODULE TYPE REF TO IF_WD_CONTEXT_ELEMENT,
STRU_MODULE TYPE IF_V_MODULE=>ELEMENT_MODULE .
data itab TYPE TABLE OF zac_modules.
navigate from <CONTEXT> to <MODULE> via lead selection
NODE_MODULE = WD_CONTEXT->GET_CHILD_NODE( NAME = `MODULE` ).
get element via lead selection
ELEM_MODULE = NODE_MODULE->GET_ELEMENT( ).
get all declared attributes
ELEM_MODULE->GET_STATIC_ATTRIBUTES(
IMPORTING
STATIC_ATTRIBUTES = STRU_MODULE ).
NODE_MODULE->GET_STATIC_ATTRIBUTES_TABLE(
IMPORTING
TABLE = itab )
DELETE itab WHERE zmodule_id = STRU_MODULE-zmodule_id.
CALL METHOD NODE_MODULE->BIND_TABLE
EXPORTING
NEW_ITEMS = itab
SET_INITIAL_ELEMENTS = ABAP_TRUE
INDEX =
ENDMETHOD.Hi ,
The onclick event provides you with a standard paramater "CONTEXT_ELEMENT" which has the element from which the event is triggered.
so you can declare this in the handler(if it is not there) and use it as follows.
CONTEXT_ELEMENT TYPE REF TO IF_WD_CONTEXT_ELEMENT an importing paramater.
DATA:
NODE_MODULE TYPE REF TO IF_WD_CONTEXT_NODE,
ELEM_MODULE TYPE REF TO IF_WD_CONTEXT_ELEMENT,
STRU_MODULE TYPE IF_V_MODULE=>ELEMENT_MODULE .
data itab TYPE TABLE OF zac_modules.
CONTEXT_ELEMENT->GET_STATIC_ATTRIBUTES(
IMPORTING
STATIC_ATTRIBUTES = STRU_MODULE ). "Using the context_element paramater to get the static attributes.
NODE_MODULE->GET_STATIC_ATTRIBUTES_TABLE(
IMPORTING
TABLE = itab ) "getting all the data.
DELETE itab WHERE zmodule_id = STRU_MODULE-zmodule_id. "deleting the particular row from the table and binding it.
CALL METHOD NODE_MODULE->BIND_TABLE
EXPORTING
NEW_ITEMS = itab
* SET_INITIAL_ELEMENTS = ABAP_TRUE
* INDEX =
thanks,
Aditya. -
hi friends,
i am working in flex 4 mxml web application with action script....i am using a data grid and one delete button outside the gird.
i have two records in the same name in grid, when i click one record from the grid and click delete means that time ,both records will delete from that grid
which record having the same name..
how to do this?
any useful suggesssion or snippets code for this..
Thanks in advance,
B.venkatesan.hello,
first get the length of the datagrid.
suppose your datagrid id is db and you want to delete the the row which have same name .....
first get the selected row and from that name of the selcted row.
supoose selected name is
var index:int=db.selectedindex;
var selname:string =bd.dataprovide.getItemAt(index).name;(name id datafield of the column).
now you got the selected name search for the same rows in datagrid.
var totallen:int=(db.dataprovider).length;
for(var i:int=0;i<totallen;i++)
var checkduplicate:string=bd.dataprovide.getItemAt(i).name;
if(checkduplicate==selname)
db.dataProvider.removeItemAt(i);
this will delete all the row which are with same name with selected row name...
Gajanan Hiroji | [email protected] | www.isacglobal.com -
WHY does the finder insist on rearranging the files and/or documents in a folder in alphabetical order even when I have selected "none" in the preferences for file organization? Even after I numbered the documents/folders to keep them in my preferred order, it will still displace them occasionally. This is becoming increasingly frustrating!
Is this a "Pages" issue or "FInder"? The vast majority of documents I use are in Pages, but there are also Numbers, PDFs, jpegs and a few other applications involved. This never happened before I upgraded to Mountain Lion; in Tiger, the documents (mostly Appleworks) and files stayed where I wanted them to be.
I am visually oriented, and prefer to arrange items in a folder in an order that makes them easier for me to access, which is often NOT alphabetical.
Can anyone suggest a solution? Please??
Thank you.
Saranbar,
Thank you for your reply.
However, I do not understand what you mean by "user account." I am the only user, and can find no options for "user" or "guest." The parental controls have always been off, as there are no other people who have access to my computer.
Frank,
Thank you for your reply.
All my documents, files and folders are in icon view, Arranged By: none in both view and view options. This arbitrary rearranging does not happen all the time, only when I make a substantial change to one of the documents in the file or folder. I'm not sure what you mean by "column heading."
MichaelLAX,
Thank you for your reply.
I know, to my sorrow, that Appleworks does not work with Mountain Lion. I spent at least three months converting approximately 2,000 Appleworks documents to Pages, Numbers, Bento (for databases) and Touchdraw (for drawings). So this is not the problem; but as I said, I did not have this rearranging problem with Appleworks - the icons stayed where I wanted them to be. I still miss the ease and reliability of Appleworks, darn it!
Frank,
Thank you for your second reply.
I do have the Sort By: in view options as well as in view set to "none." The finder still insists on rearranging, but only when I have made a substantial change to a document in that file or folder.
Any futher thoughts?
xdab,
Thank you for your reply.
"Are you are using icon view, but for some reason the finder moves files around? is that the problem?"
YES!! This is exactly the problem.
"If this operation is successful then erase the original and rename the new one to the name originally chosen by the user."
This seems like a lot of trouble, especially as I often work on several documents at the same time.
"By the way, the finder has a "clean up by" menu that rearranges icons in one of the standard orders, there are shortcuts that produce the same effect, for example <option><cmd>1 sorts them by name. Is it possible that this shortcut was typed by mistake without you noticing?"
I do know about this "clean up by" option, and avoid it like the plague! So I doubt this is the issue, and I infrequently use keyboard shortcuts like this anyway.
Thanks all who replied. None of the suggestions seem to work, however. Any others out there?
Regards,
Sara -
ORA-01785: ORDER BY item must be the number of a SELECT-list expression
I have a dynamic SQL on a page. The SQL is dynamic because there are 3 LOV fields from which the user may make selections, and those field values are used in the WHERE clause. Also, the 2nd LOV field is populated with AJAX based on the 1st LOV's selection. And, the SQL joins to another table. The report has 7 sortable columns. The main table the SQL runs over has about 1,000 rows in it.
The 2nd table has about 500 rows. (Sorry, I'm not sure what information you might need to help me, so I listed several details.)
The application, and page, have been working flawlessly for several weeks. Then, yesterday the page was being used and the user received the "ORA-01785: ORDER BY item must be the number of a SELECT-list expression" error. The error just appeared out of the blue, so to speak. After weeks of of usage this is the first time this error has appeared. The application had not been changed, but they had been entering data into the main table and the table joined to in the SQL. The application is in production, so I can't put the application into DEBUG, etc. to see what SQL is being built.
Anyway, I was trying to debug the page today and was doing selections and seeing what would display, then as suddenly as the page quit working it started working correctly. No code changes made, no server changes made (to my knowledge), and no data changes made.
I'm new to both Oracle and Apex, and am not a SQL, Oracle or Apex expert. So, I am very perplexed and don't have any idea of what could be happening.
I don't know if it's an issue with the SQL, AJAX not loading the select fields properly, a corrupted table, a server load issue, or something else all together.
Any suggestions?
Also, I'm not familiar with Oracle error messages. Can they be red herrings sometimes? Because, I don't programmaticly code the ORDER BY of the SQL. Apex appends that part. So, how could that aspect quit working. And, then suddenly start working.
Sorry, but I'm extremely confused. :-) Any suggestions or help will be greatly appreciated.
Thanks, TonyHi Dan,
Thanks for the feedback. I'm not going to be dogmatic about possible cause, but it has myself and another Oracle developer (who writes SQL and PL/SQL in his sleep) stumped. He doesn't think it's the SQL. Your suggestion was one of the first things we thought of considering the error message we got, but from Scott's reply that it could be a red herring, and after additional testing we've ruled the SQL out for now.
I understand what you're saying, but the SQL selects all the columns (about 40 columns are selected) that are sortable columns on the report. I've sorted by all the columns by clicking on them and that aspect works without error.
The SQL is created dynamically and is quite large. I've included below just for information purposes.
Thanks, Tony
= = = = = = =
DECLARE
q VARCHAR2 (4000);
BEGIN
q := 'select ';
q := q || 'hd."ID", hd."MODEL", hd."YEAR", hd."HIN", hd."BOAT_STATUS", hd."SPECIAL_ACTIVITY", hd."PARTIAL_KIT_VALUE",
hd.OPTION_NUMBER || '' - '' || e.DESCRIPTION OPTION_NUMBER,
hd."OPTIONS_HOURS", hd."OPTIONS_MATERIAL", hd."STATION", hd."ACTIVITY_COMMENT", hd."BI_EQUIV_MATERIAL",
hd."BI_EQUIV_LABOR", hd."EI_EQUIV_MATERIAL", hd."EI_EQUIV_LABOR", hd."BASE_BOAT", hd."SA_ENGINES",
hd."SA_OPTIONS", hd."DY_STANDARD_MATERIAL", hd."DY_STANDARD_LABOR", hd."DY_STANDARD_OVERHEAD",
hd."DY_STANDARD_ENGINE", hd."DY_ENGINE_ENGINEUP", hd."DY_ENGINE_MATERIAL", hd."DY_ENGINE_LABOR",
hd."DY_ENGINE_OVERHEAD", hd."DY_OPTIONS_MATERIAL", hd."DY_OPTIONS_LABOR", hd."DY_OPTIONS_OVERHEAD", hd."EI_STANDARD_UNITS", hd."EI_STANDARD_MATERIAL", hd."EI_STANDARD_LABOR", hd."EI_STANDARD_OVERHEAD", hd."EI_STANDARD_ENGINE", hd."EI_ENGINE_ENGINEUP", hd."EI_ENGINE_MATERIAL", hd."EI_ENGINE_LABOR", hd."EI_ENGINE_OVERHEAD", hd."EI_OPTIONS_MATERIAL", hd."EI_OPTIONS_LABOR", hd."EI_OPTIONS_OVERHEAD",
htmldb_item.hidden(50,hd.ID) idalias ';
q := q || 'from "PLP_HIN_DETAIL" hd , "PLP_ENGINES" e ';
IF
:P10_SEARCH_MODEL IS NOT NULL
AND :P10_SEARCH_MODEL <> '%null%'
AND :P10_SEARCH_YEAR IS NOT NULL
AND :P10_SEARCH_YEAR <> '%null%'
AND :P10_SEARCH_STATUS IS NOT NULL
AND :P10_SEARCH_STATUS <> '%null%'
THEN
q := q || 'WHERE
(instr(upper(hd.MODEL),upper(nvl(:P10_SEARCH_MODEL,hd.MODEL))) > 0
AND instr(upper(hd.YEAR),upper(nvl(:P10_SEARCH_YEAR,hd.YEAR))) > 0
AND instr(upper(hd.BOAT_STATUS),upper(nvl(:P10_SEARCH_STATUS,hd.BOAT_STATUS))) > 0)
AND e.OPTION_NUMBER (+) = hd.OPTION_NUMBER and e.YEAR (+) = hd.YEAR AND e.MODEL (+) = hd.MODEL AND e.PLP_ID (+) = hd.PLP_ID';
ELSE
IF
:P10_SEARCH_MODEL IS NOT NULL
OR :P10_SEARCH_YEAR IS NOT NULL
OR :P10_SEARCH_STATUS IS NOT NULL
THEN
q := q || 'WHERE
(instr(upper(hd.MODEL),upper(nvl(:P10_SEARCH_MODEL,hd.MODEL))) > 0
AND instr(upper(hd.YEAR),upper(nvl(:P10_SEARCH_YEAR,hd.YEAR))) > 0
or instr(upper(hd.BOAT_STATUS),upper(nvl(:P10_SEARCH_STATUS,hd.BOAT_STATUS))) > 0)
AND e.OPTION_NUMBER (+) = hd.OPTION_NUMBER and e.YEAR (+) = hd.YEAR AND e.MODEL (+) = hd.MODEL AND e.PLP_ID (+) = hd.PLP_ID';
else
q := q || 'WHERE e.option_number = hd.option_number and e.year = hd.year and e.model = hd.model and e.plp_id = hd.plp_id';
END IF;
END IF;
q := q || ' AND :P0_PLP_ID = hd.PLP_ID';
return q;
END; -
How to select and duplicate the records and update some column values using cursor
I have a table with 920 records, we need to update the end date to 6/30/2014 for 920 records and I need to create all 920 records with start date is 7/1/2014 and update the external value to
CCC.
Note: the table primary key is not auto increment, but I have sp to get the latest key for that.
Existing table.
ID
Source Name
Internal value
External value
Start date
End date
1
XXX
AAA
BBB
1/1/2013
6/30/2015
Create new records
ID
Source Name
Internal value
External value
Start date
End date
921
XXX
AAA
CCC
7/1/2013
12/30/2015Hi ManuGT
If I understand what you need then you ask for:
1. updating all current rows (920 rows in the table now)
2. insert new rows which are duplicates of the preiviews rows, but with value 'CCC' insteade of 'BBB'
If so, there is not reason to use a cursor and it is highly NOT RECOMMENDED to use ant type of loop.
You should work with SET and do it all in 2 simple queries:
-- first we duplicate the existing rows,
-- but we use the values 'CCC" and '20140107' for the new rows values
INSERT test (SourceName, InternalValue, ExternalValue, StartDate, EndDate)
select SourceName, 'CCC', ExternalValue, '20140107' , EndDate
from test
where
-- You can use any filter that you need if you dont want to update all rows
InternalValue = 'AAA' and ExternalValue = 'BBB' and StartDate = '20140101' and EndDate = '20140630'
-- Now we update the old rows (check the filter! I get only the old rows since I filter the new rown out)
UPDATE test
SET EndDate = '20140107' -- I use date in format yyyymmdd, You can use other formats as well
where
-- You can use any filter that you need if you dont want to update all rows
InternalValue = 'AAA' and ExternalValue = 'BBB' and StartDate = '20140101' and EndDate = '20140630'
Unfortunately you did not post DDL+DML! Therefore we cant see your table structure and the data sample and we can only guess. I used Saeid's post as the basic DDL+DML.
Please next time post DDL+DML
here is the full code with the DDL+DML that i used:
-- This is our DDL - A create table query:
create table test
( id int identity(1,1) primary key,
SourceName nvarchar(3),
InternalValue nvarchar(3),
ExternalValue nvarchar(3),
StartDate date,
EndDate date
go
-- This is our DML - A query that insert some sample data
declare @i int = 1 ;
while @i < 921
begin
insert test (SourceName, InternalValue, ExternalValue, StartDate, EndDate)
values ('XXX', 'AAA', 'BBB', '1/1/2014', '6/30/2014' ) ;
set @i += 1 ;
end ;
GO
-- Here is the solution for the problem as I understood your needs:
-- first we duplicate the existing rows,
-- but we use the values 'CCC" and '20140107' for the new rows values
INSERT test (SourceName, InternalValue, ExternalValue, StartDate, EndDate)
select SourceName, 'CCC', ExternalValue, '20140107' , EndDate
from test
where
-- You can use any filter that you need if you dont want to update all rows
InternalValue = 'AAA' and ExternalValue = 'BBB' and StartDate = '20140101' and EndDate = '20140630'
-- Now we update the old rows (check the filter! I get only the old rows since I filter the new rown out)
UPDATE test
SET EndDate = '20140107' -- I use date in format yyyymmdd, You can use other formats as well
where
-- You can use any filter that you need if you dont want to update all rows
InternalValue = 'AAA' and ExternalValue = 'BBB' and StartDate = '20140101' and EndDate = '20140630'
-- Here we just check how the result look like :-)
select *
from test ;
-- And since we do not realy need this table in our server... Here we clean the DDL (you probaby DO NOT WANT TO EXECUTE THIS!)
DROP table test
GO
I hope this was useful :-)
[Personal Site] [Blog] [Facebook]
Maybe you are looking for
-
How to get exact query of sql in oracle?
Hi all, Hope doing well, sir i was using one query of sql that is here: Declare @nshiftmax datetime set @nshiftmax=convert(time,DATEADD(N,1439,0)) print @nshiftmax so it is retreiving the result 1/1/1900 11:59 p.m and one more query is there Declare
-
SOAP Sender Adatper - Read custom http header field
Hello, i try to read a custom http header into the dynamic configuration of a message - but it is not working as expected - in ASMA i configured to get the value of MYHEADER1 into XHEADERNAME1 - when testing with a MYHEADER1 value, the value is not p
-
Using Illustrator CS6, how to preserve drawn colors when Save For Web to PNG?
Using Illustrator CS6 on Mac OSX 10.9.1: step 1. I open a new file for Web profile. step 2. I verify that File > Document Color Mode is RGB. step 3. I draw a square and set it's color to 0,103,197 (decimal). step 4. I click File > Save For Web step 5
-
Archived Log is not shifting from Primary to DR
we have increase the table size without taking care of DR, so sapdata1 becomes 100% at DR site after that applying archived had stopped at DR, after that i manually added datafile using following commands, select * from v$recover_file where error lik
-
Movement type from restricted to block
Dear ALL, I have a scenario of Deadline Monitoring, in which one the material date get expired it went to restricted stock and from there directly to block stock..So which movement type should i used for such scenario.We used presently QA05 T-Code. R