Retrieve next record
Hi there,
I have a query where I pass in a VARCHAR2 (CIPIDI_NR). This Query should return the next higher (or lower) record depending on some conditions. I tried:
select * from TBL_CIPIDI
where confidential_flag = 0
and CIPIDI_NR > (THIS IS WHERE I PASS IN THE VALUE)
Unfortunately this returns all records which are higher than the VALUE I pass in. But I only would like to receive the next record. I am not using a sequence. How would be the best way to approach this.
Thanks a lot
Chris
-- correction: I left out the confidential_flag = 0 in the subquery:
select *
from TBL_CIPIDI
where confidential_flag = 0
and CIPIDI_NR =
(SELECT MIN (cipidi_nr)
FROM tbl_cipidi
WHERE confidential_flag = 0
AND cipidi_nr > (PASSED IN VALUE))
Similar Messages
-
HCP tcode PA40 Upload program failing to move to next record.
Dear All
I have written and upload program for HCM tcode PA40 and the program is fine but only inserting one record and is failing to pick the next records in a loop. I dont know whats the problem i know the process have many screens, please help me, i have tried to research not yet found the answer yet.
Thank you for your assistance
Here is my Upload program
*& Report ZUPLOADEMPHIRING
REPORT ZUPLOADEMPHIRING.
include bdcrecx1.
PARAMETERS: p_file TYPE rlgrap-filename.
x_endrow TYPE i .
DATA: xdate(10).
DATA: Fullname type string.
DATA: x_begrow TYPE i VALUE 2,
x_begcol TYPE i VALUE 1,
x_endcol TYPE i VALUE 17,
x_endrow TYPE i VALUE 3.
TYPES: BEGIN OF t_datatab ,
FromDate(10),
Reasonforaction(2),
Position(8),
PersonalArea(4),
EmployeeGroup(1),
EmployeeSubGroup(2),
SubArea(4),
PayrolArea(2),
Title(5),
Lastname(40),
Firstname(40),
BirtDate(10),
Nationality(3),
Group(1),
Level(1),
BankKey(15),
BankAccount(18),
END OF t_datatab.
DATA: BEGIN OF t_datatabfinal OCCURS 0,
FromDate(10),
Reasonforaction(2),
Position(8),
PersonalArea(4),
EmployeeGroup(1),
EmployeeSubGroup(2),
SubArea(4),
PayrolArea(2),
Title(5),
Lastname(40),
Firstname(40),
BirtDate(10),
Nationality(3),
Group(1),
Level(1),
BankKey(15),
BankAccount(18),
END OF t_datatabfinal.
DATA: BEGIN OF it_record OCCURS 0,
FromDate(10),
Reasonforaction(2),
Position(8),
PersonalArea(4),
EmployeeGroup(1),
EmployeeSubGroup(2),
SubArea(4),
PayrolArea(2),
Title(5),
Lastname(40),
Firstname(40),
BirtDate(10),
Nationality(3),
Group(1),
Level(1),
BankKey(15),
BankAccount(18),
END OF it_record.
DATA: itab LIKE alsmex_tabline OCCURS 0 WITH HEADER LINE,
gd_currentrow TYPE i,
it_datatab TYPE STANDARD TABLE OF t_datatab,
wa_datatab TYPE t_datatab.
AT SELECTION-SCREEN on VALUE-REQUEST FOR p_file.
CALL FUNCTION 'F4_FILENAME' "
EXPORTING
FIELD_NAME = 'P_FILE '
IMPORTING
FILE_NAME = p_file.
CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
EXPORTING
PROGRAM_NAME = SYST-REPID
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = ' '
STATIC = ' '
MASK = ' '
CHANGING
FILE_NAME =
EXCEPTIONS
MASK_TOO_LONG = 1
OTHERS = 2
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
START-OF-SELECTION.
CALL FUNCTION 'ALSM_EXCEL_TO_INTERNAL_TABLE'
EXPORTING
filename = p_file
i_begin_col = x_begcol
i_begin_row = x_begrow "Column header not required
i_end_col = x_endcol
i_end_row = x_endrow
TABLES
intern = itab.
Sort table by rows and colums
SORT itab BY row col.
Get first row retrieved
READ TABLE itab INDEX 1.
Set first row retrieved to current row
gd_currentrow = itab-row.
clear: t_datatabfinal.
refresh t_datatabfinal.
LOOP AT itab.
Reset values for next row
IF itab-row NE gd_currentrow.
APPEND wa_datatab TO t_datatabfinal.
CLEAR wa_datatab.
gd_currentrow = itab-row.
ENDIF.
concatenate sy-datum6(2)'.' sy-datum4(2)'.' sy-datum+2(4) into xdate .
CASE itab-col.
WHEN '0001'.
wa_datatab-FromDate = itab-value.
concatenate wa_datatab-DocumentDate6(2)'.' wa_datatab-DocumentDate4(2)'.' wa_datatab-DocumentDate+2(4) into wa_datatab-DocumentDate.
WHEN '0002'.
wa_datatab-Reasonforaction = itab-value.
WHEN '0003'.
wa_datatab-Position = itab-value.
WHEN '0004'.
wa_datatab-PersonalArea = itab-value.
WHEN '0005'.
wa_datatab-EmployeeGroup = itab-value.
WHEN '0006'.
wa_datatab-EmployeeSubGroup = itab-value.
WHEN '0007'.
wa_datatab-SubArea = itab-value.
WHEN '0008'.
wa_datatab-PayrolArea = itab-value.
WHEN '0009'.
wa_datatab-Title = itab-value.
WHEN '0010'.
wa_datatab-Lastname = itab-value.
WHEN '0011'.
wa_datatab-Firstname = itab-value.
WHEN '0012'.
wa_datatab-BirtDate = itab-value.
WHEN '0013'.
wa_datatab-Nationality = itab-value.
WHEN '0014'.
wa_datatab-Group = itab-value.
WHEN '0015'.
wa_datatab-Level = itab-value.
WHEN '0016'.
wa_datatab-BankKey = itab-value.
WHEN '0017'.
wa_datatab-BankAccount = itab-value.
WHEN OTHERS.
ENDCASE.
APPEND wa_datatab to t_datatabfinal.
ENDLOOP.
clear: it_record.
refresh it_record.
loop at t_datatabfinal into it_record.
append it_record.
endloop.
perform open_group.
loop at it_record.
concatenate it_record-Firstname it_record-Lastname into Fullname separated by space.
perform bdc_dynpro using 'SAPMP50A' '2000'.
perform bdc_field using 'BDC_CURSOR'
'T529T-MNTXT(02)'.
perform bdc_field using 'BDC_OKCODE'
'=PICK'.
perform bdc_field using 'RP50G-EINDA'
it_record-FromDate. "" '01012012'.
perform bdc_field using 'RP50G-SELEC(02)'
'X'.
perform bdc_dynpro using 'MP000000' '2000'.
perform bdc_field using 'BDC_CURSOR'
'PSPAR-PERSG'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0000-BEGDA'
it_record-FromDate. "" '01.01.2012'.
perform bdc_field using 'P0000-ENDDA'
'31.12.9999'.
perform bdc_field using 'P0000-MASSN'
'ZB'.
perform bdc_field using 'P0000-MASSG'
it_record-Reasonforaction. "" '01'.
perform bdc_field using 'PSPAR-PLANS'
it_record-Position. "" '99999999'.
perform bdc_field using 'PSPAR-WERKS'
it_record-PersonalArea. " 'm003'.
perform bdc_field using 'PSPAR-PERSG'
it_record-EmployeeGroup. "" 'a'.
perform bdc_field using 'PSPAR-PERSK'
it_record-EmployeeSubGroup. "" '02'.
perform bdc_dynpro using 'MP000100' '2000'.
perform bdc_field using 'BDC_CURSOR'
'P0001-BTRTL'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0001-BEGDA'
it_record-FromDate. ""'01.01.2012'.
perform bdc_field using 'P0001-ENDDA'
'31.12.9999'.
perform bdc_field using 'P0001-BTRTL'
it_record-SubArea. "" 'mm01'.
perform bdc_field using 'P0001-ABKRS'
it_record-PayrolArea. "" 'Z2'.
perform bdc_field using 'P0001-PLANS'
it_record-Position. ""'99999999'.
perform bdc_dynpro using 'MP000200' '2000'.
perform bdc_field using 'BDC_CURSOR'
'P0002-NATIO'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0002-BEGDA'
it_record-FromDate. ""'01.01.2012'.
perform bdc_field using 'P0002-ENDDA'
'31.12.9999'.
perform bdc_field using 'Q0002-ANREX'
it_record-Title. "" 'Mr'.
perform bdc_field using 'P0002-NACHN'
it_record-Lastname. " 'maxwel'.
perform bdc_field using 'P0002-VORNA'
it_record-Firstname. "" 'razaro'.
perform bdc_field using 'P0002-GBDAT'
it_record-BirtDate. "" '01011970'.
perform bdc_field using 'P0002-SPRSL'
'EN'.
perform bdc_field using 'P0002-NATIO'
it_record-Nationality. "" 'ZW'.
perform bdc_dynpro using 'MP000700' '2000'.
perform bdc_field using 'BDC_CURSOR'
'P0007-BEGDA'.
perform bdc_field using 'BDC_OKCODE'
'/00'.
perform bdc_field using 'P0007-BEGDA'
it_record-FromDate."" '01.01.2012'.
perform bdc_field using 'P0007-ENDDA'
'31.12.9999'.
perform bdc_field using 'P0007-SCHKZ'
'MANORM'.
perform bdc_field using 'P0007-ZTERF'
'9'.
perform bdc_field using 'P0007-EMPCT'
' 100,00'.
perform bdc_dynpro using 'MP000700' '2000'.
perform bdc_field using 'BDC_CURSOR'
'P0007-BEGDA'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0007-BEGDA'
it_record-FromDate.""'01.01.2012'.
perform bdc_field using 'P0007-ENDDA'
'31.12.9999'.
perform bdc_field using 'P0007-SCHKZ'
'MANORM'.
perform bdc_field using 'P0007-ZTERF'
'9'.
perform bdc_field using 'P0007-EMPCT'
' 100,00'.
perform bdc_field using 'P0007-ARBST'
' 8,00'.
perform bdc_field using 'P0007-WKWDY'
' 5,00'.
perform bdc_dynpro using 'MP000800' '2000'.
perform bdc_field using 'BDC_CURSOR'
'P0008-TRFST'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0008-BEGDA'
it_record-FromDate. "" '01.01.2012'.
perform bdc_field using 'P0008-ENDDA'
'31.12.9999'.
perform bdc_field using 'P0008-TRFAR'
'01'.
perform bdc_field using 'P0008-BSGRD'
'100,00'.
perform bdc_field using 'P0008-TRFGB'
'01'.
perform bdc_field using 'P0008-TRFGR'
it_record-Group. ""'a'.
perform bdc_field using 'P0008-TRFST'
it_record-Level. "" '1'.
perform bdc_field using 'P0008-DIVGV'
'173,00'.
perform bdc_field using 'P0008-ANCUR'
'USD'.
perform bdc_field using 'Q0008-IBBEG'
xdate.""'12.01.2012'.
perform bdc_field using 'P0008-WAERS'
'USD'.
perform bdc_dynpro using 'MP000900' '2000'.
perform bdc_field using 'BDC_CURSOR'
'P0009-ZLSCH'.
perform bdc_field using 'BDC_OKCODE'
'=UPD'.
perform bdc_field using 'P0009-BEGDA'
it_record-FromDate. ""'01.01.2012'.
perform bdc_field using 'P0009-ENDDA'
'31.12.9999'.
perform bdc_field using 'P0009-BNKSA'
'0'.
perform bdc_field using 'Q0009-EMFTX'
Fullname. "" 'maxwel razaro'.
perform bdc_field using 'P0009-BANKS'
'ZW'.
perform bdc_field using 'P0009-BANKL'
it_record-BankKey. ""'10351'.
perform bdc_field using 'P0009-BANKN'
it_record-BankAccount. "" '543234667778'.
perform bdc_field using 'P0009-ZLSCH'
'b'.
perform bdc_field using 'P0009-WAERS'
'USD'.
perform bdc_dynpro using 'SAPMP50A' '2000'.
perform bdc_field using 'BDC_OKCODE'
'/EBCK'.
perform bdc_field using 'BDC_CURSOR'
'RP50G-PERNR'.
perform bdc_transaction using 'PA40'.
endloop.
perform close_group.
Regards
WilliamHi,
It seems like you are uploading data to a screen that contains table control.just check the link below for your reference
[http://wiki.sdn.sap.com/wiki/display/ABAP/bdcontable+control]
Regards,
Vamshi
Edited by: vamshi reddy . ch on Jan 13, 2012 7:38 AM
Edited by: vamshi reddy . ch on Jan 13, 2012 7:39 AM -
Analytic query to select next record
Hi all,
I would like to query the below two table match to ouput.
1.dev_wt 2.dev_map 3.Output Result
To help more clearance please see this image link : http://lh6.ggpht.com/_xL6eBqjW6Yo/TEqnSvlF_FI/AAAAAAAAB0U/i2sclnnaj6g/Untitled-3.jpg
1. dev_wt
PMS_COMP PMS_I PMS_PERF_D PMS_WT PMS_CREATION_D
BBOARD GICEQGROSS 04/01/2001 30 04/05/2001
BBOARD GICST_B 04/01/2001 5 04/05/2001
BBOARD SBGS_B 04/01/2001 65 04/05/2001
BBOARD GICEQGROSS 04/11/2001 30 04/15/2001
BBOARD GICST_B 04/11/2001 5 04/15/2001
BBOARD SBGS_B 04/11/2001 65 04/15/20012. dev_map
GS_CODE GS_I_CODE GS_I_ID MD_ID GS_START_DT GS_END_DT
GICEQGROSS CIWL 304 15 01/04/1998 31/03/2004
GICEQGROSS CIWL 304 2 01/04/2004 31/03/9998
GICST_B GICST_B 3707 15 01/04/2000 31/12/9998
SBGS_B SBGS_B 2231 15 01/04/1992 30/09/2003
SBGS_B SBGS_B 564 15 01/10/2003 31/12/9998I would like to match PMS_I = GS_CODE to retrieve GS_I_CODE and using analytic
query to find next record.
Because I need to select GICEQGROSS record of PMS_PERF_D date and next
GICEQGROSS record of PMS_PERF_D from dev_wt table and put GS_WT_FR and GS_WT_TO of Output result.
***Date is change to YYYYMMDD format
***PMS_WT is devided by 100
*3. Output Result*
GS_I_ID PMS_COMP GS_I_CODE GS_WT_FR GS_WT_TO GS_I_CALC
304 BBOARD CIWL 20010401 20010410 0.3
3707 BBOARD GICST_B 20010401 20010410 0.05
5209 BBOARD SBGS_B 20010401 20010410 0.65PMS_COMP is from dev_wt table
GS_I_CODE is from dev_map table join with dev_wt
GS_WT_FR is from dev_wt table of GS_START_DT
GS_WT_TO is from dev_wt table of next record GS_START_DT where PMS_I ='GICEQGROSS'
Now my difficulty is to select next record of PMS_PERF_D using analytic query. Below
is my query...
SELECT GS_I_ID, PMS_COMP, GS_I_CODE, GS_WT_FR, GS_WT_TO, GS_I_CALC
FROM dev_wt (
SELECT lead(PMS_PERF_D) over(partition by PMS_I order by PMS_PERF_D) as GS_WT_TO
FROM dev_wt where PMS_I ='GICEQGROSS')
left join dev_map on PMS_I = GS_CODE ;Thanks
Edited by: WinZone on Jul 24, 2010 4:46 PM
Edited by: WinZone on Jul 24, 2010 4:50 PMHi,
This query should be fine:
SELECT DISTINCT t2.gs_i_id, pms_comp, t2.gs_i_code,
TO_CHAR
(MIN (pms_perf_d) OVER (PARTITION BY pms_comp, pms_i),
'yyyymmdd'
) gs_wt_fr,
TO_CHAR
(MAX (pms_perf_d) OVER (PARTITION BY pms_comp, pms_i) - 1,
'yyyymmdd'
) gs_wt_to,
pms_wt / 100 gs_i_calc
FROM dev_wt t1, dev_map t2
WHERE t2.gs_code = t1.pms_iREM Same remark as odie: should be "2231" instead ... -
How to access next record from database on to form
hi
i have written the following piece of code to retrieve data from database oon to form...
Try
rset = oDICompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
query = "Select * from [@TEST] where Code = ('" + oform.Items.Item("6").Specific.value + "') "
rset.DoQuery(query)
Catch ex As Exception
SBO_Application.MessageBox(ErrorToString)
End Try
' oform.Items.Item("6").Specific.value = rset.Fields.Item("Code").Value
oform.Items.Item("7").Specific.value = rset.Fields.Item("Name").Value
oform.Items.Item("8").Specific.value = rset.Fields.Item("U_Sal").Value
but i can see only one record on my form controls.... i have placed on more button called " Next" so that i can access next records from DB when i click on "Next" button...
Public Sub NextRecords()
Try
rset.MoveFirst()
While Not rset.EoF
' oform.Items.Item("6").Specific.value = rset.Fields.Item("Code").Value
oform.Items.Item("7").Specific.value = rset.Fields.Item("Name").Value
oform.Items.Item("8").Specific.value = rset.Fields.Item("U_Sal").Value
rset.MoveNext()
End While
rset.MoveNext()
Catch ex As Exception
SBO_Application.MessageBox(ErrorToString)
SBO_Application.MessageBox("Updated")
End Try
End sub
i'm not able to access next records...
plz provide me the solution and code for this how to handle this scenario....From your question and code sample given, I think the problem is you are seeing only the last record when pressing the next button.
In the Next button press, you are coded such a way that it will populate the last record.
Try removing the do..While.. loop and simply code like
if Not rset.EoF
rset.MoveNext()
oform.Items.Item("6").Specific.value = rset.Fields.Item("Code").Value
oform.Items.Item("7").Specific.value = rset.Fields.Item("Name").Value
oform.Items.Item("8").Specific.value = rset.Fields.Item("U_Sal").Value
end if
So when you click next, you can see the next record. Not the last record.
Anoop -
Retrieving 10 records per page
hi,
i would like to have the source code for retrieving 10 records per page in jsp. I have a huge resultset and i would like to display 10 records per page.
your help is highly appreciated.
regards
andrewhi,
i would like to have the source code for retrieving 10
records per page in jsp. I have a huge resultset and
i would like to display 10 records per page.
your help is highly appreciated.
regards
andrewHey Andrew, this code will help you out. Essentially the pseudocode to do what you want is below. Let's say your jsp is called dbresults.jsp
Get total number of results from query result set
If page is called with no index number of current record to display
Display the records from 0 until a max of ten counting how many we display and keeping track of the current record number.
end if
else
Display the records up to a max of ten from the index number we received in the query
end else
tempvar_a is the current number of records displayed minus 10 records and minus the amount of records displayed on this page.
If tempvar > 0
Display a previous button with the a href as dbresults.jsp?index=tempvar value
end if
else if current record index < total record count
then there are more records to display so make a next button with an href of dbresults.jsp?index=value of current record number plus one
end else
One caveat is that getting the index number in the beginning of the JSP as:
request.getParameter("VIEWEDROWS");
will return a string that we have to convert to an int since you will be adding and comparing to this number so do:
String TEMPVIEWEDROWS = request.getParameter("VIEWEDROWS");
int VIEWEDROWS = 0;
if (TEMPVIEWEDROWS != null) {
VIEWEDROWS = Integer.parseInt(TEMPVIEWEDROWS); -
T-SQL: Cursor is not advancing to next record
SQL Version: 2008 R2
Problem: I have the code below which uses a cursor. The cursor keeps returning the first record and does not advance to the next record in the cursor. It appears as if the Fetch Next is not being recognized. The Select
Statement in the cursor declaration returns two records which is the result set I expect to be contained in the cursor record set.
...bob sutor
SQL CODE:
DECLARE
@ProcessGroupID nchar(4)
, @RemoveAuditUser nchar(128)
DECLARE CertGroupCursor CURSOR FOR
SELECT DISTINCT CertGroups.GroupCode, CertGroups.RemoveAuditUser
--, UserControl.ProcessGroupID, UserControl.VPUserName
FROM udCertGroups AS CertGroups
LEFT JOIN udAuditUsers AS UserControl
ON CertGroups.GroupCode = UserControl.ProcessGroupID
WHERE CertGroups.GroupCode = UserControl.ProcessGroupID
AND CertGroups.RemoveAuditUser = UserControl.VPUserName
OPEN CertGroupCursor
FETCH NEXT FROM CertGroupCursor INTO @ProcessGroupID, @RemoveAuditUser
WHILE @@FETCH_STATUS = 0
Print @ProcessGroupID + '-' + @RemoveAuditUser
DELETE FROM udAuditUsers
WHERE ProcessGroupID = @ProcessGroupID
AND VPUserName = @RemoveAuditUser
FETCH NEXT FROM CertGroupCursor INTO @ProcessGroupID, @RemoveAuditUser
CLOSE CertGroupCursor
DEALLOCATE CertGroupCursor
Bob SutorThe real question is how to get rid of this mess. Think about the local “@remove_audit_user” as a variable; it's name is a verb, not a noun! and the NVARCHAR(n) lets you use Chinese Unicode. Why? In ISO-11179 rules , “remove_” is a called a role, and the
audit user would be the attribute with the attribute property “_user” in a valid data model. Where is the table that models “audit_users”? It has to be here by definition.
One of the first rules of data modeling is that a data element has one and only one name. This is a results of the Law of Identity in Logic (A is A: to be is to be something in particular, to be nothing in particular or many things in general is to be nothing
at all).
So how did “G.remove_audit_user = U.vp_user_name” occur?? ANSWER: lack of a design!
Your “G.group_code = U.process_group_id” is wrong. An identifier is not a code! TOTALLY DIFFERENT type of data elements! Do you have a postal code or a postal id? Blood_type or blood_id? Etc.? Have you ever read a book on basic data modeling?
The purpose of PRINT is debugging and not output. We had joke in the ANSI X3H2 Committee that SQL means “scarcely Qualified as a Language” because there is no I/O. PRINT will screw up performance in so many ways.
In a properly designed schema, we seldom use SELECT DISTINCT; we have keys and a valid schema that does not produce redundant duplicate rows. It might be valid, but after 30+ years of SQL, I would bet against it.
Your statement would use an EXISTS() predicate to handle multiple columns and conditions. But you did not bother with DDL, as required by basic Netiquette, so here is the skeleton I can give you.
DELETE FROM UD_Audit_Users
WHERE EXIST
(SELECT *
FROM UD_Cert_Groups AS G
WHERE G.process_group_id = ??
AND G.vp_user_name = ??;
--CELKO-- Books in Celko Series for Morgan-Kaufmann Publishing: Analytics and OLAP in SQL / Data and Databases: Concepts in Practice Data / Measurements and Standards in SQL SQL for Smarties / SQL Programming Style / SQL Puzzles and Answers / Thinking
in Sets / Trees and Hierarchies in SQL -
Hello Experts,
i have created a report where i have one parameter field where user will pass parameter(e.g. EmpId). As per parameter record will fetched to report if no parameter is passed then it will display all records. I have done it by taking SqlServer Database as datasource.
by using Following method
Now i would like to do it by taking Sharepoint List as Datasource. For that what would be the CAML Query.
Here is my existing CAML query.
<RSSharePointList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<ListName>Employees</ListName>
<ViewFields>
<FieldRef Name="Title" />
<FieldRef Name="FirstName" />
<FieldRef Name="LastName" />
<FieldRef Name="FullName" />
<FieldRef Name="UserName" />
<FieldRef Name="Company" />
</ViewFields>
<Query>
<Where>
<Eq>
<FieldRef Name="Title" />
<Value Type="Text">
<Parameter Name="EmployeeId"/>
</Value>
</Eq>
</Where>
</Query>
</RSSharePointList>
The above code is working if i am passing an employeeId to Parameter. If nothing is passed, it is Not retrieving any record.
Please suggest
Thank you
saroj
sarojYour problem follows the well-established pattern of using an "All" parameter filter in SSRS. There are a few approaches depending on the size of your data. The easiest one is to return all data from CAML and then filter it within SSRS, the following thread
provides some examples,
http://stackoverflow.com/questions/18203317/show-all-records-some-records-based-on-parameter-value.
Other options include passing all of the possible values within the CAML query when "All" is selected, using multiple Report Files to distinguish between both CAML queries, or to use multiple datasets with some logic to show/hide the correct one.
Dimitri Ayrapetov (MCSE: SharePoint) -
See my problem no master record move to next record
hi master
sir
i have master detail block master table have all data but detail no data i need feed data in detail then i goto in detail block write value and press F10 for save
for new record in detail
in detail blick post-block or post_record or post_insert event i write this code
go_block('masterblock');
next_record;
go_item('detailblock.item');
but not responses no master block move to next record still and my curser sitll in last postion
sir how i move master record after save the detail record and jump to detail block for new record
please give me idea or code
thanking you
aamirthank for reply
sir your help very usefull for my but when i press F10 then system show massage do you want to save change the record
sir how i avoid that window and directly move to next record
please give me idea
thanking you
aamir -
My code not give me result and error for move to next record please see
hi master
sir i import this file also
import javax.faces.event.ValueChangeEvent;
then my error remove
i am use this code in button event
getMfatableDataProvider().cursorNext();
form1.discardSubmittedValues("virtualForm1");
and my textField is bounded with data provider table field
please give me idea how i show next rocord in page when user press button
thank's
aamirthank for reply
sir your help very usefull for my but when i press F10 then system show massage do you want to save change the record
sir how i avoid that window and directly move to next record
please give me idea
thanking you
aamir -
Retrieve the records based on date where date is not stored
Hi,
I have one table in Oracle.
I want to retrieve the records which are added or modified after a particular date & time.(but the table does not contain any column for date & time )
For example: Product table(pid number,pname varchar2)
i am entering 10 records on date 21/07/2005
i am entering 20 records on date 22/07/2005
i am entering 15 records on date 23/07/2005
i am entering 30 records on date 24/07/2005
If i want to retrieve the records added after 22/7/2005
(ie.) last 45 records
But the table does not contain any date field.
How will you know date & time of each record updated in the table.
If any one knows, help me.
bye.for 9iR2: check out online document of Oracle9i Application Developer's Guide - Fundamentals and search flash back query
http://download-west.oracle.com/docs/cd/B10501_01/appdev.920/a96590/adg08sql.htm#10851
for 10G, flash back feature is enhenced to whole database level, you can still use flash back query though. -
Conditional Sum and look at next record
First off, here is an example XML structure
<DATASET>
<DATASET_ROW>
<DEPARTMENT>1</DEPARTMENT>
<FEE>30</FEE>
<DIVISION>Displayed Title</DIVISION>
</DATASET_ROW>
<DATASET_ROW>
<DEPARTMENT>1</DEPARTMENT>
<FEE>20</FEE>
<DIVISION>Displayed Title2</DIVISION>
</DATASET_ROW>
<DATASET_ROW>
<DEPARTMENT>1</DEPARTMENT>
<FEE>40</FEE>
<DIVISION>Displayed Title3</DIVISION>
</DATASET_ROW>
<DATASET_ROW>
<DEPARTMENT>2</DEPARTMENT>
<FEE>30</FEE>
<DIVISION>Displayed Title 5</DIVISION>
</DATASET_ROW>
<DATASET_ROW>
<DEPARTMENT>2</DEPARTMENT>
<FEE>80</FEE>
<DIVISION>Displayed Title 6</DIVISION>
</DATASET_ROW>
<DATASET_ROW>
<DEPARTMENT>3</DEPARTMENT>
<FEE>90</FEE>
<DIVISION>Displayed Title 7</DIVISION>
</DATASET_ROW>
<DATASET_ROW>
<DEPARTMENT>3</DEPARTMENT>
<FEE>90</FEE>
<DIVISION>Displayed Title 8</DIVISION>
</DATASET_ROW>
<DATASET_ROW>
<DEPARTMENT>4</DEPARTMENT>
<FEE>30</FEE>
<DIVISION>Displayed Title 9</DIVISION>
</DATASET_ROW>
</DATASET>
Is there any way to get a sum of a field grouped by two different fields? Example in my RTF I have a repeating group based on DIVISION which inserts section breaks. Using the example I have posted here what I have in my RTF template is a sum of FEE (assume there are multiple records for DIVISION though only 1 is shown here) that displays on every page for the current group. Each DIVISION is printed on its own page. However, at the end of each DEPARTMENT, I also need to print a summary total of the sum of FEE over all records for that DEPARTMENT on the same page as the last page of the last DIVISION.
So far, I have been able to get it to do the subtotals for each DEPARTMENT as they are within the scope of my loop. The tricky part I am unsure of how best to go about doing is getting and displaying the conditional grand total. My initial idea was to use a variable and do it manually in my template but then I relaized I did not know how to find out if the next record was the first record in the next Department or not. In this case, I am hoping to stick within the realm of using straight SQL Query as my datasource because its already done. The other option I considered was nested loops and a data template but then I realized that I wasn't too sure about manually inserting the section breaks.
Any thoughts?Yes, you can do that,
Pass me the template and XML :)
<?if:position() = last()?>
Last Record
<? end if ?>
then display the sub-total for department at the last division.
This link , gives you idea of , how to display at the last
http://blogs.oracle.com/xmlpublisher/2008/08/continued.html
Use
xdofo:inline-total display-condition="last" -
I am using the "fetch all" vi to do this, but it is retrieving one record at a time, (if you examine the block diagram) How can i retrieve all records in a faster more efficient manner?
If this isn't faster than your previous method, then I think you found the wrong example. If you have the Database Connectivity Toolkit installed, then go to the LabVIEW Help menu and select "Find Examples". It defaults to searching for tasks, so open the "Communicating with External Applications" and "Databases" and open the Read All Data. The List Column names just gives the correct header to the resulting table and is a fast operation. That's not what you are supposed to be looking at ... it's the DBTools Select All Data subVI that is the important one. If you open it and look at its diagram, you'll see that it uses a completely different set of ADO methods and properties to retrieve all the data.
-
How to implement JSF text input down-arrow key = next record navigation?
Hi All,
I've got a small query which you experts might be able to help me through. I would not be surprised if such questions would already have been raised in this forum.
Formerly, I've created an Oracle Form that allow user to quickly insert data in bulk. It only has three 3 fields - first name, second name and address. Because of the flexibility of the Oracle Form, by pressing the down arrow key, user is able to create record when the last record is detected. And vice versa by hitting the up arrow key, it will move to the previous record when the current record is not the first record. So basically, the form is very 'key-driven' and without the use of the mouse, a lot of data can be inserted very quickly and efficiently.
I've successfully converted such form to an ADF BC JSF page using the JHeadstart toolkit. But when I showed it to my users for comment, they were really disappointed with the number of mouse interactions they need to click every time to navigate between records as well as creating new records. My question is can I build some sort of ADF JSF event handler on any of the text items to perform the following tasks:
1.) When 'down arrow key' is pressed AND not the last record THEN
Go to the next record.
2.) When 'down arrow key' is pressed AND is the last record THEN
Go to the next blank record.
3.) When 'up arrow key' is pressed AND not the first record THEN
Go to the previous record.
4.) When 'up arrow key' is pressed AND is the first record THEN
Do nothing.
If all the four above tasks are achievable in ADF JSF, can you please guide and brief me on the steps to implement them. Or these functionalities are already available somewhere in other open source toolkits. Your help is much appreciated. Thank you and have a nice day.
Kind Regards,
JohnHi Steven,
I've tried to incoporated attached link's codes with the JHeadstart generated code inside the jspx but I still cannot get it to work. There is a lot of Javascript error and is impossible to debug.
Regards,
John -
Database hangs after retrieving some records....
hi,
I create a two level B+-tree index, for the first level i'm using key as logical database name, for the second level B+-tree i'm using some other field in my data. I am retrieving the records based on logical database name. I am using C++ to implement my index.
In the following code i'm retrieving records from database. Program is behaving differently for different logical database names. For example in my database i have around 4 lakhs records with logical database name 'A' and around 1 lakh of records with logical database name 'B'. The following code displays all B records but programs hangs after retrieving some A records.
I'm using PAGE_SIZE=8192, numBuffers=2048, and runnig in Fedora Core3.
DbEnv myEnv(0);
myEnv.set_cachesize(0, PAGE_SIZE * numBuffers, 0);
myEnv.set_data_dir("/home/raviov/new/database");
try {
myEnv.open("./", DB_CREATE | DB_INIT_MPOOL, 0);
catch (DbException &e) {
cerr << "Exception occurred: " << e.what() << endl;
exit(1);
db=new Db(&myEnv,0);
db->set_pagesize(PAGE_SIZE);
db->set_bt_compare(compare_int);
dbname=itoa(p);
try
db->open(NULL,
"treedb.db",
dbname,
DB_BTREE,
0,
0);
catch(DbException &e)
cerr << "Failed to open DB object" << endl;
exit(1);
db->cursor(NULL,&cursorp,0);
key=new Dbt();
data=new Dbt();
while(ret=(cursorp->get(key,data,DB_NEXT))==0)
j=*((int*)key->get_data());
q=(*((struct tuple*)data->get_data())).startPos;
r=(*((struct tuple*)data->get_data())).endPos;
s=(*((struct tuple*)data->get_data())).level;
cout<<"position : "<<j<<"\t";
cout<<"start : "<<q<<"\t";
cout<<"end : "<<r<<"\t";
cout<<"level : "<<s<<"\n";
if(ret==DB_NOTFOUND)
cout<<"no records";
exit(1);
if(cursorp!=NULL)
cursorp->close();
try
db->close(0);
catch(DbException &e)
cerr << "Failed to close DB object" << endl;
exit(1);
myEnv.close(0);HI Andrei,
thank you for giving reply, I'm not using any secondary indecies, subdatabases and not using any threads.
the following code displays index...
#include <stdio.h>
#include <db_cxx.h>
#include <iostream.h>
#include <db.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
int PAGE_SIZE=8192;
int numBuffers=2048;
char *itoa(const int x)
char buf[100];
snprintf(buf, sizeof(buf), "%d", x);
return strdup(buf);
int compare_int(Db dbp, const Dbt a, const Dbt *b)
int ai;
int bi;
memcpy(&ai,a->get_data(),sizeof(int));
memcpy(&bi,b->get_data(),sizeof(int));
return(ai-bi);
struct tuple
int startPos;
int endPos;
int level;
main()
FILE *fp;
int i,j,k,l,m,n,total=0;
char dbname[500],filename[500],str [500];
tuple t;
Db *db;
Dbt key,data;
DbEnv myEnv(0);
myEnv.set_cachesize(0, PAGE_SIZE * numBuffers, 0);
try {
myEnv.open("/home/raviov/Desktop/example", DB_CREATE | DB_INIT_MPOOL, 0);
catch (DbException &e) {
cerr << "Exception occurred: " << e.what() << endl;
exit(1);
for(n=0;n<=84;n++)
db = new Db(&myEnv, 0); // Instantiate the Db object
db->set_bt_compare(compare_int);
db->set_pagesize(PAGE_SIZE);
strcpy(filename,"/home/raviov/Desktop/GTCReport/code/sequence/splitter/tree/");
strcat(filename,itoa(n));
fp=fopen(filename,"r");
if(fp==NULL)
cout<<"error in opening the file";
exit(0);
while(fgets (str , 500 , fp)!=NULL)
sscanf(str,"%d(%d,%d,%d,%d)",&i,&j,&k,&l,&m);
key=new Dbt(&i,sizeof(int));
if(total==0)
strcpy(dbname,itoa(j));
t.startPos=k;
t.endPos=l;
t.level=m;
data=new Dbt(&t,sizeof(t));
if(total==0)
try
db->open(NULL,
"tree.db",
dbname,
DB_BTREE,
DB_CREATE,
0);
catch(DbException &e)
cerr << "Failed to create DB object" << endl;
exit(1);
total=99;
int ret=db->put(NULL,key,data,DB_NOOVERWRITE);
if(ret==DB_KEYEXIST)
cout<<"key already exist\n";
exit(1);
delete key;
delete data;
total=0;
fclose(fp);
try
db->close(0);
catch(DbException &e)
cerr << "Failed to close DB object" << endl;
exit(1);
myEnv.close(0);
}The following code retrieves the records from database that we had built above...
#include <stdio.h>
#include <db_cxx.h>
#include <iostream.h>
#include <db.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
int PAGE_SIZE=8192;
int numBuffers=2048;
char *itoa(const int x)
char buf[100];
snprintf(buf, sizeof(buf), "%d", x);
return strdup(buf);
int compare_int(Db dbp, const Dbt a, const Dbt *b)
int ai;
int bi;
memcpy(&ai,a->get_data(),sizeof(int));
memcpy(&bi,b->get_data(),sizeof(int));
return(ai-bi);
struct tuple
int startPos;
int endPos;
int level;
main()
FILE *fp;
int i,j,k,l,m,n,total=0;
char *dbname;
char filename[200],str [100];
tuple t;
Db *db;
Dbt key,data;
Dbc *cursorp=NULL;
int ret,x=4;
char *ravi;
int p=84763;
int y=2134872;
int r,s,q,count=0;
DbEnv myEnv(0);
myEnv.set_cachesize(0, PAGE_SIZE * numBuffers, 0);
myEnv.set_data_dir("/home/raviov/new/database");
try {
myEnv.open("./", DB_CREATE | DB_INIT_MPOOL, 0);
catch (DbException &e) {
cerr << "Exception occurred: " << e.what() << endl;
exit(1);
db=new Db(&myEnv,0);
db->set_pagesize(PAGE_SIZE);
db->set_bt_compare(compare_int);
dbname=itoa(p);
try
db->open(NULL,
"tree.db",
dbname,
DB_BTREE,
0,
0);
catch(DbException &e)
cerr << "Failed to open DB object" << endl;
exit(1);
db->cursor(NULL,&cursorp,0);
key=new Dbt();
data=new Dbt();
while(ret=(cursorp->get(key,data,DB_NEXT))==0)
j=*((int*)key->get_data());
q=(*((struct tuple*)data->get_data())).startPos;
r=(*((struct tuple*)data->get_data())).endPos;
s=(*((struct tuple*)data->get_data())).level;
cout<<"position : "<<j<<"\t";
cout<<"start : "<<q<<"\t";
cout<<"end : "<<r<<"\t";
cout<<"level : "<<s<<"\n";
delete key;
delete data;
if(ret==DB_NOTFOUND)
cout<<"no records";
exit(1);
if(cursorp!=NULL)
cursorp->close();
try
db->close(0);
catch(DbException &e)
cerr << "Failed to close DB object" << endl;
exit(1);
myEnv.close(0);
} -
Previous and next records in a table
Let's say I have a table where I have
item name sequence customer number
I want to select these three fields where name = 'INSPECTION', but I'd also like to grab the record prior to this and the record after this, regardless of the name content. I need to do it for each customer number.
Is it possible for a novice like me to do?
Thank youWhat is "next record" and "previous record" for you in this context? A database table doesn't have records in any specific order. They have an arbitrary order.
If for you, the records have the sequence as an ordering information, then you could use LAG and LEAD functions.
Maybe you are looking for
-
How do I move all files from one project, to another hard drive?
I am using CS3- I created a project on one hard drive, began editing, etc.- but now I'd like to move that project to another hard drive. Where are all of the files associated with it so I can move it successfully? Thanks!
-
Java Version for PI 7.1
Hi all, Can anyone please tell me what is the exact recommended JRE version for PI 7.1 with enhancement package1. thanks in advance Jagruthi
-
IE7 and Multiple Embedded SWF Videos Not Working
We have a page that contains 2 videos that are streamed from our media hosting company. The code is fairly straightforward, <object type="application/x-shockwave-flash" data="http://xxx.xxx.xxx/your.swf" width="400" height="300"> <param name="movie"
-
Is Adobe Creative Suite 5.5 Design Premium Compatible with Yosemite? Currently on Maverick 10.9.5.
-
Displaying only cost center groups
Hi BW Gurus! There's a standard cost center group and cost center hierarchy in the source system that I was able to extract. My cost center infoobject (0COSTCENTER) had that hierarchy data. My question is, in the instance that I want to display only