Override Existing functionality in OO ALV
Hi
Can any one give me the procedure to override the standard functionality associcate with the buttons in ALV Toolbar.
I am not able debug the when the user perfroms action on the Standard ALV toolbar. Can you help me
Thanks all.
Check sample program BCALV_EDIT_05. You need to create a local class to handle user actions. By this way you can assign different functionality to an existing key or ad new keys with required functionality.
Similar Messages
-
How to override the functionality of a method which is embedded in an swf
Hi,
I have an swf for my application for which i do not have the source code. Now i want to override the functionality of a method (say doIt()) in a class (say MyClass.as).
Is there any way to achieve the classloader functionality that similar to the tomcat classloading functionality for java files.
i.e Tomcat's classloader searches the WEB-INF/classes directory before the WEB-INF/lib/*.jar. That means my original code is in lib folder, and the orerriden code is in the classes folder. In this case, tomcat will see the classes folder first, if my class does not exist in this folder, then it looks for the lib folder.
Can we achieve the same class loading functionality in Flex. The overall idea is to change the functionlity of a feature without touching the original swf and by creating an external swf and by calling it.
Regards,
Sangeeta KalyaniSangeetha Kalyani,
Use SWF de-compiler.. and get the source of your SWF.. i think this will simplyfy your JOB...!
Thanks,
Pradeep -
Bug in exists() function of XI Graphical Mapping Tool?
Hi!
If I connect a source field with the exists() function in XI Graphical Mapping Tool and the tag exists it returns TRUE, otherwise it returns FALSE, so everything works as expected.
But I have to connect a user-defined function with exists(). The user-defined function will either calculate a value or set Resultset.SUPPRESS.
If there is a value the exits() function returns TRUE, however if Resultset.SUPPRESS is set it does also return TRUE! This looks to me like a bug in exists() function. Shouldn't it always return FALSE if the input is Resultset.SUPPRESS?
Regards, TanjaHi Stefan!
> The exists() function checks, if a queue is empty.
> An empty queue is <b>not</b> represented by the
> SUPPRESS value.
> If inside a queue there is a SUPPRESS value, the
> queue is <b>not</b> empty.
Ok, so it's not a bug and the exists() function is working as expected.
> If you want the exist() function after a UDF, provide
> an empty queue, or easier: return the values "true"
> or "false" directly from the UDF.
Yes, that's how I actually solved the problem. The UDF was used at several places where the ResultList.SUPPRESS output was needed. So I copied the UDF and changed it so that the output was TRUE or FALSE instead.
Regards, Tanja -
How to use XQuery Exist() Function on a SSIS XML file
I have a Package Inventory table that has an XML Column named CurrentPackageXML. This XML column contains the SSIS Package XML. I need to use the XQuery Exist() function to determine if the
errorRowDisposition="IgnoreFailure" exists.
Below I have a basic SQL statement, but I have no idea how to write the Correct XQuery Expression. In my example below, I just tried to see if the DTS:Name Property existed, but that XQuery Expression is invalid also. It is not what I need in the end, but
I was just trying to get anything to work.
Below my SQL, I have included a snip-it of the SSIS package XML where I can find the errorRowDisposition. It is to the far right, so you may have to scroll to the right to see it. I bolded the text so it is easier to find.
Finally, once I have got a SQL statement that checks if errorRowDisposition exists = False, I need to check for every occurrence of errorRowDisposition exists = False.
Would there be an easier way to do this by converting the XML to a varchar(max) then searching for all instances of errorRowDisposition exists = False?
SELECT CurrentPackageXML.exist('/DTS:Executable/DTS:Property[DTS:Name]')
FROM [dbo].[PackageInventory]
<inputs>
<input id="43" name="OLE DB Destination Input" description="" hasSideEffects="true" dangling="false" errorOrTruncationOperation="Insert" errorRowDisposition="FailComponent" truncationRowDisposition="NotUsed">
<inputColumns>
<inputColumn id="113" name="" description="" lineageId="110" usageType="readOnly" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="95" mappedColumnId="0" />
<inputColumn id="172" name="" description="" lineageId="167" usageType="readOnly" errorOrTruncationOperation="" errorRowDisposition="NotUsed" truncationRowDisposition="NotUsed" externalMetadataColumnId="94" mappedColumnId="0" />
</inputColumns>
<externalMetadataColumns isUsed="True">
<externalMetadataColumn id="50" name="DateCreated" description="" precision="0" scale="0" length="0" dataType="dbTimeStamp" codePage="0" mappedColumnId="0" />
<externalMetadataColumn id="51" name="ProcessedCount" description="" precision="0" scale="0" length="0" dataType="i4" codePage="0" mappedColumnId="0" />
<externalMetadataColumn id="52" name="ErrorCount" description="" precision="0" scale="0" length="0" dataType="i4" codePage="0" mappedColumnId="0" />
<externalMetadataColumn id="90" name="AcknowledgementID" description="" precision="0" scale="0" length="0" dataType="i4" codePage="0" mappedColumnId="0" />
<externalMetadataColumn id="91" name="Date" description="" precision="0" scale="0" length="0" dataType="dbTimeStamp" codePage="0" mappedColumnId="0" />
<externalMetadataColumn id="92" name="FileSeqNumber" description="" precision="0" scale="0" length="0" dataType="i4" codePage="0" mappedColumnId="0" />
<externalMetadataColumn id="93" name="FileType" description="" precision="0" scale="0" length="50" dataType="str" codePage="65001" mappedColumnId="0" />
<externalMetadataColumn id="94" name="FileName" description="" precision="0" scale="0" length="50" dataType="str" codePage="65001" mappedColumnId="0" />
<externalMetadataColumn id="95" name="DateReceived" description="" precision="0" scale="0" length="0" dataType="dbTimeStamp" codePage="0" mappedColumnId="0" />
</externalMetadataColumns>
</input>
</inputs>
Ryan P. Casey • <a href="http://www.R-P-C-Group.com">www.R-P-C-Group.com</a>Try this and let know what errors you get. Note, this is a rough draft of one of a series of queries that I have started writing to document SSIS using SQL XQuery. I read a file in my version (the one I tested) and get the results.
-- Get the flat file destinations and their mappings
with xmlnamespaces ('www.microsoft.com/SqlServer/Dts' as DTS
), compflow as (
SELECT
task.xml.value('@DTS:ObjectName', 'varchar(200)') as TaskName
, task.xml.value('@DTS:ExecutableType', 'varchar(200)') as TaskType
, task.xml.value('@DTS:refId', 'varchar(1000)') as TaskRefId
--, task.xml.query ('.') as Node
, component.xml.value ('@name', 'varchar(200)') as ComponentName
, component.xml.value ('@refId', 'varchar(1000)') as ComponentRefId
, component.xml.value ('@componentClassID', 'varchar(1000)') AS componentClassID
--, component.xml.value ('count(inputs/input)', 'int') AS NumberOfInputs
--, component.xml.value ('count(outputs/output)', 'int') AS NumberOfOutputs
--, component.xml.value ('count(outputs/output[@isErrorOut="true"])', 'int') AS NumberOfErrorOutputs
, component.xml.query('.') as ComponentNode
FROM [dbo].[PackageInventory] pk
cross apply pk.CurrentPackageXML.nodes('//DTS:Executable[@DTS:ExecutableType="Microsoft.Pipeline"]') as task (xml)
OUTER APPLY task.xml.nodes('DTS:ObjectData/pipeline/components/component') as component (xml)
WHERE [PackageInventory_ID] = 13
, inputNode as (
SELECT c.*
, input.xml.value ('@name', 'varchar(200)') as InputName
, input.xml.value ('@refId', 'varchar(1000)') as InputRefId
, input.xml.value ('@hasSideEffects', 'varchar(1000)') as InputHasSideEffects
, input.xml.value ('count(inputColumns/inputColumn)', 'int') AS NumberOfInputColumns
, input.xml.value ('count(externalMetadataColumns/externalMetadataColumn)', 'int') AS NumberOfExternalMetadataColumns
, input.xml.value ('@errorOrTruncationOperation', 'varchar(1000)') as InputerrorOrTruncationOperation
, input.xml.value ('@errorRowDisposition', 'varchar(1000)') as InputerrorRowDisposition
, col.xml.value ('@errorOrTruncationOperation', 'varchar(1000)') as InputColumnErrorOrTruncationOperation
, col.xml.value ('@errorRowDisposition', 'varchar(1000)') as InputColumnErrorRowDisposition
from compFlow c
OUTER APPLY c.ComponentNode.nodes ('component/inputs/input') as input (xml)
OUTER APPLY input.xml.nodes ('inputColumns/inputColumn') as col (xml)
, inputAnal as (
select
TaskName
,TaskType
,TaskRefId
,ComponentName
,ComponentRefId
,componentClassID
,InputName
,InputRefId
,InputHasSideEffects
, Null as IsError
,NumberOfInputColumns
,NumberOfExternalMetadataColumns
,InputerrorOrTruncationOperation
,InputerrorRowDisposition
,InputColumnErrorOrTruncationOperation
,InputColumnErrorRowDisposition
, count(*) as NumRec
from inputNode
group by TaskName
,TaskType
,TaskRefId
,ComponentName
,ComponentRefId
,componentClassID
,InputName
,InputRefId
,InputHasSideEffects
,NumberOfInputColumns
,NumberOfExternalMetadataColumns
,InputerrorOrTruncationOperation
,InputerrorRowDisposition
,InputColumnErrorOrTruncationOperation
,InputColumnErrorRowDisposition
, xoutputNode as (
SELECT
TaskName
,TaskType
,TaskRefId
,ComponentName
,ComponentRefId
,componentClassID
, xout.xml.value ('@name', 'varchar(200)') as OutputName
, xout.xml.value ('@refId', 'varchar(1000)') as OutputRefId
, xout.xml.value ('@hasSideEffects', 'varchar(1000)') as OutputHasSideEffects
, xout.xml.value ('@isErrorOut', 'varchar(1000)') as OutputIsError
, xout.xml.value ('count(outputColumns/outputColumn)', 'int') AS NumberOfOutputColumns
, xout.xml.value ('count(externalMetadataColumns/externalMetadataColumn)', 'int') AS NumberOfExternalMetadataColumns
, xout.xml.value ('@errorOrTruncationOperation', 'varchar(1000)') as OutputerrorOrTruncationOperation
, xout.xml.value ('@errorRowDisposition', 'varchar(1000)') as OutputerrorRowDisposition
, col.xml.value ('@errorOrTruncationOperation', 'varchar(1000)') as OutputColumnErrorOrTruncationOperation
, col.xml.value ('@errorRowDisposition', 'varchar(1000)') as OutputColumnErrorRowDisposition
from compFlow c
OUTER APPLY c.ComponentNode.nodes ('component/outputs/output') as xout (xml)
OUTER APPLY xout.xml.nodes ('outputColumns/outputColumn') as col (xml)
, outputAnal as(
select
TaskName
,TaskType
,TaskRefId
,ComponentName
,ComponentRefId
,componentClassID
,OutputName
,OutputRefId
,OutputHasSideEffects
,OutputIsError
,NumberOfOutputColumns
,NumberOfExternalMetadataColumns
,OutputerrorOrTruncationOperation
,OutputerrorRowDisposition
,OutputColumnErrorOrTruncationOperation
,OutputColumnErrorRowDisposition
, count (*) as NumberOfRows
from xoutputNode
group by TaskName
,TaskType
,TaskRefId
,ComponentName
,ComponentRefId
,componentClassID
,OutputName
,OutputRefId
,OutputHasSideEffects
,OutputIsError
,NumberOfOutputColumns
,NumberOfExternalMetadataColumns
,OutputerrorOrTruncationOperation
,OutputerrorRowDisposition
,OutputColumnErrorOrTruncationOperation
,OutputColumnErrorRowDisposition
select 'Input' as RowType, i.* from inputAnal i
union all
select 'Output' as RowType, o.* from outputAnal o
Russel Loski, MCT, MCSE Data Platform/Business Intelligence. Twitter: @sqlmovers; blog: www.sqlmovers.com -
hi all i wonder if there is a way to to override pressing function keys(f1,f3,f6,f7,....) in adf page for all of the page not just for an input text .
in another way can i make a client listener for a <f:view> or <af:document> so the javascript function will be called when i preses any button in keyboard without focusing in inputtext or a command button
Edited by: user554540 on 22/06/2010 03:03 صHi,
the problem is that keyboard events are only raised from input components. client listeners can only added to ADF Faces components and af:document does not accept keyboard entries. However, I tried
af:document > panelStrechtLayout (center facet) > panelGroupLayout (scroll) and assigned a clientListener. At runtime has the desired effect
Frank
Edited by: Frank Nimphius on Jun 22, 2010 6:27 PM -
Extending the existing functional locations to a new plant?
Hi Sapiens,
The following is my concern:
Q1) I have a set of functional locations(roughly around 5000 records) assigned to say Plant A.
I would like to extend these existing functional locations to Plant B. I am not permitted to do this using LSMW. I should execute this operation in one shot.
How to accomplish this?
Q2) After attaching all the functional locations to Plant B, i should replace the first 4 characters of the functional location structure with the Plant Code itself. Again not through an lsmw. How to accomplish this in one shot?
Please let me know the procedure of doing it with some guidelines.
Thanks in Advance,
VijayaHi
1. You can extentd to the other plant with SCAT ,BDC etc
2. But You can not replace the first four letters from the FL with the New plant code.Remember this is a master data
Regardas
Jignesh -
Need Help Can i use Merge command along with exist function in oracle?
I am using Merge command to update the destination table and updating the rows which are already in the destination table.
But what i want is to delete the existing rows from the destination table and insert fresh rows instead of updating the existing rows in the destination table.
So can we use exist function to check the existing rows and delete them and use merge command to insert the rows in the table.You definitely need to do a DELETE then INSERT since MERGE will not delete rows, although I'm not really sure what that gets you since the net effect would be the same as a MERGE over the same pair of tables.
If you really want to do it this way, then I would likely do something like:
DELETE FROM target_table
WHERE (columns_you_would_match_on) IN (SELECT columns_you_would_match_on
FROM source_table
WHERE predicate_you_would_use_in_using);
INSERT INTO target_table (column_list)
SELECT column_list
FROM source_table
WHERE predicate_you_would_use_in_using;John -
What is the difference b/w ALV Function Module and ALV Methods?
Hello Friends,
Can anybody help me in finding out the difference between ALV Function Modules and ALV methods?
Thanks & Regards
Sathish KumarHi Sathish,
Plz go through this info. It is very useful.
hi,
chk these excellent links.
http://www.geocities.com/mpioud/Abap_programs.html
http://www.sapdevelopment.co.uk/reporting/reportinghome.htm
Simple ALV report
http://www.sapgenie.com/abap/controls/alvgrid.htm
http://wiki.ittoolbox.com/index.php/Code:Ultimate_ALV_table_toolbox
http://www.sapgenie.com/abap/controls/alvgrid.htm
http://wiki.ittoolbox.com/index.php/Code:Ultimate_ALV_table_toolbox
ALV
1. Please give me general info on ALV.
http://www.sapfans.com/forums/viewtopic.php?t=58286
http://www.sapfans.com/forums/viewtopic.php?t=76490
http://www.sapfans.com/forums/viewtopic.php?t=20591
http://www.sapfans.com/forums/viewtopic.php?t=66305 - this one discusses which way should you use - ABAP Objects calls or simple function modules.
2. How do I program double click in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=11601
http://www.sapfans.com/forums/viewtopic.php?t=23010
3. How do I add subtotals (I have problem to add them)...
http://www.sapfans.com/forums/viewtopic.php?t=20386
http://www.sapfans.com/forums/viewtopic.php?t=85191
http://www.sapfans.com/forums/viewtopic.php?t=88401
http://www.sapfans.com/forums/viewtopic.php?t=17335
4. How to add list heading like top-of-page in ABAP lists?
http://www.sapfans.com/forums/viewtopic.php?t=58775
http://www.sapfans.com/forums/viewtopic.php?t=60550
http://www.sapfans.com/forums/viewtopic.php?t=16629
5. How to print page number / total number of pages X/XX in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=29597 (no direct solution)
6. ALV printing problems. The favourite is: The first page shows the number of records selected but I don't need this.
http://www.sapfans.com/forums/viewtopic.php?t=64320
http://www.sapfans.com/forums/viewtopic.php?t=44477
7. How can I set the cell color in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=52107
8. How do I print a logo/graphics in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=81149
http://www.sapfans.com/forums/viewtopic.php?t=35498
http://www.sapfans.com/forums/viewtopic.php?t=5013
9. How do I create and use input-enabled fields in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=84933
http://www.sapfans.com/forums/viewtopic.php?t=69878
10. How can I use ALV for reports that are going to be run in background?
http://www.sapfans.com/forums/viewtopic.php?t=83243
http://www.sapfans.com/forums/viewtopic.php?t=19224
11. How can I display an icon in ALV? (Common requirement is traffic light icon).
http://www.sapfans.com/forums/viewtopic.php?t=79424
http://www.sapfans.com/forums/viewtopic.php?t=24512
12. How can I display a checkbox in ALV?
http://www.sapfans.com/forums/viewtopic.php?t=88376
http://www.sapfans.com/forums/viewtopic.php?t=40968
http://www.sapfans.com/forums/viewtopic.php?t=6919
Go thru these programs they may help u to try on some hands on
ALV Demo program
BCALV_DEMO_HTML
BCALV_FULLSCREEN_DEMO ALV Demo: Fullscreen Mode
BCALV_FULLSCREEN_DEMO_CLASSIC ALV demo: Fullscreen mode
BCALV_GRID_DEMO Simple ALV Control Call Demo Program
BCALV_TREE_DEMO Demo for ALV tree control
BCALV_TREE_SIMPLE_DEMO
BC_ALV_DEMO_HTML_D0100
OOPs:
Check this for basic concepts of OOPS
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/abap/abap%20code%20samples/abap%20objects/abap%20code%20sample%20to%20learn%20basic%20concept%20of%20object-oriented%20programming.doc
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/abap/abap%20code%20samples/alv%20grid/abap%20code%20sample%20to%20display%20data%20in%20alv%20grid%20using%20object%20oriented%20programming.doc
Tabstrip
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/abap/abap%20code%20samples/alv%20grid/abap%20code%20sample%20for%20tab%20strip%20in%20alv.pdf
Editable ALV
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/abap/abap%20code%20samples/alv%20grid/abap%20code%20sample%20to%20edit%20alv%20grid.doc
Tree
http://www.sapdevelopment.co.uk/reporting/alv/alvtree/alvtree_usrint.htm
General Tutorial for OOPS
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/abap/an%20easy%20reference%20for%20alv%20grid%20control.pdf
Rewords some points if it is helpful.
Rgds,
P.Naganjana Reddy -
Any existing function to validate an item when other item has been changed?
Any existing function to validate an item when another item has been changed? Because these 2 fields are related. When one filed is changed, the other one should be blank and let the user to input again. I am using oracle custom.pll library.
Any ideas?
AmyHi Vikram,
Thanks for posting your issue,
You can switch of alerts and set E-Mail Notification to Yes under your Workflow Tasks list > Settings > Advanced Settings. By doing so user specified in AssignedTo will receive e-mail notification when task is created and if task ownership is not changed
during your workflow this will be the only mail sent by system.
Since you are already using SharePoint designer you also have option to include Send an Email action in your workflow (after task is created). This option is better if you want to send some specific info to user.
Also, browse the below mentioned URLs to create workflow step by step
http://sharepointsolutions.com/sharepoint-help/blog/2010/03/create-a-detailed-custom-task-notification-with-a-sharepoint-designer-workflow/
http://sharepoint-community.net/forum/topics/configure-email-notification-for-discussion-board-activity
I hope this is helpful to you, mark it as Helpful.
If this works, Please mark it as Answered.
Regards,
Dharmendra Singh (MCPD-EA | MCTS)
Blog : http://sharepoint-community.net/profile/DharmendraSingh -
Custom Function on OO ALV Grid
I am trying to implement ALV_GRID_XT to enhance the ALV Grid toolbar by adding couple of custom funcitons.As per the SAP documentation I have created 2 methods ON_TOOLBAR - one for adding items on toolbar and the other ON_USER_COMMAND - for processing if the user clicks on the custom function.
I am unable to relate the ALV Grid instance onto the method ON_USER_COMMAND . One of the funciton is to calculate the average of column which represents percentage excluding cells with zero values. Once the user selects column(s) and clicks on the Percent button on the ALV grid my piece of code should trigger ON_USER_COMMAND and then display the average percentage on the Totals row.
Method ON_USER_COMMAND has only one parameter E_UCOMM which i am able to get in the method but I am not able to get the instance of the ALV grid so that I can play around with the data in the Grid.
I could have used a local class and then enhanced the ALV toolbar but this requirement is needed for about 20 reports and hence thought of implementing it globally.
Any ideas would be appreciated.Hi there
You need to set the handlers of course and register the events
I'm using also a Z-class using functionality from the ALV Grid
in the application program
data: z_object type ref to zcl_* "my z_class"
* Instantiate your Z class
create object z_object
exporting
z_object = z_object
cfname = 'CCONTAINER1'.
Now in your Constructor for your Z-Class have a variable
say grid1 which is defined as a type ref to cl_gui_alv_grid.
Code the methods you require --. The trick is to instantiate your OWN Z class and within YOUR CLASS instantiate the GRID1 variable as an instance of cl_gui_alv_grid - then you can use methods etc from that class in your own Z class simple via something like this
method CONSTRUCTOR.
create object grid_container1
exporting
container_name = cfname.
create object grid1
exporting
i_parent = grid_container1.
set handler z_object->on_user_command for grid1.
set handler z_object->on_toolbar for grid1.
set handler z_object->handle_data_changed for grid1.
set handler z_object->handle_data_changed_finished for grid1.
set handler z_object->on_dubbelklik for grid1.
set handler z_object->on_hotspot for grid1.
call method grid1->register_edit_event
exporting
i_event_id = cl_gui_alv_grid=>mc_evt_enter.
endmethod.
method display_grid .
get reference of g_outtab into g_outtab1.
get reference of g_fldcat into g_fldcat1.
struct_grid_lset-edit = i_edit. "To enable editing in ALV
struct_grid_lset-zebra = i_zebra.
struct_grid_lset-cwidth_opt = i_opt.
struct_grid_lset-grid_title = i_gridtitle.
* struct_grid_lset-ctab_fname = 'T_CELLCOLORS'.
* struct_grid_lset-stylefname = 'CELLTAB'.
struct_grid_lset-ctab_fname = style_fname.
struct_grid_lset-stylefname = style_ctab.
* export gt_outtab from gt_outtab to memory id 'gt_outtab'.
call method grid1->set_table_for_first_display
exporting
is_layout = struct_grid_lset
changing
it_outtab = gt_outtab
it_fieldcatalog = it_fldcat.
endmethod.
You need to add the buttons to the toolbar with your ON TOOLBAR method
for example
method on_toolbar .
type-pools icon.
clear ls_toolbar.
move 0 to ls_toolbar-butn_type.
move 'EXCEL' to ls_toolbar-function.
move space to ls_toolbar-disabled.
move icon_xxl to ls_toolbar-icon.
move 'Excel' to ls_toolbar-quickinfo.
move 'EXCEL' to ls_toolbar-text.
append ls_toolbar to e_object->mt_toolbar.
perform toolbar in program (caller) if found
using e_object.
endmethod.
Now the functionality should work in the ON_USER_COMMAND .
Here's my ON_USER_COMMAND method within the class
method ON_USER_COMMAND.
* FOR EVENT before_user_command OF cl_gui_alv_grid
* IMPORTING
* e_ucomm
* sender
* When defined in SE24 you don't need to code the
* FOR EVENT etc as this is already defined as an event handler
case e_ucomm.
when 'EXIT'.
leave program.
when 'EXCEL'.
call method me->download_to_excel.
when 'SAVE'.
when 'PROC'.
call method me->process.
when 'REFR'.
call method me->refresh.
when 'SWITCH'.
call method me->switch.
when 'TEST'.
call method me->get_cell.
endcase.
endmethod.
Add whatever extra functionality you want to the on_user_command so long as you've defined toolbars..
Cheers
jimbo -
hai all
iwant to know about few function modules in alv
1) reuse_alv_default_varients_get.
2)reuse alv_varients_f4
what is the use of these function modules
how to use these function modules, what r the structures used to use these function module. where to pass this in
in list and grid display function modules.
plz help me.
thanks & regards
sinduHI,
check this.
REPORT Z_TEST_alv_variant .
TYPE-POOLS : SLIS.
PARAMETERS: ONE RADIOBUTTON GROUP G1 DEFAULT 'X',
TWO RADIOBUTTON GROUP G1.
DATA: BEGIN OF I_TAB OCCURS 0,
FIELD1 TYPE I,
FIELD2 TYPE I,
END OF I_TAB.
DATA: GT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
LS_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
DATA: L_VARIANT TYPE DISVARIANT,
LX_VARIANT LIKE DISVARIANT,
L_SAVE TYPE C,
L_EXIT(1) TYPE C.
SELECTION-SCREEN BEGIN OF BLOCK 0 WITH FRAME TITLE TEXT-VAR.
PARAMETERS: P_VARI LIKE DISVARIANT-VARIANT.
SELECTION-SCREEN END OF BLOCK 0.
INITIALIZATION.
L_SAVE = 'A'.
PERFORM VARIANT_INIT.
Get default variant
LX_VARIANT = L_VARIANT.
CALL FUNCTION 'REUSE_ALV_VARIANT_DEFAULT_GET'
EXPORTING
I_SAVE = L_SAVE
CHANGING
CS_VARIANT = LX_VARIANT
EXCEPTIONS
NOT_FOUND = 2.
IF SY-SUBRC = 0.
P_VARI = LX_VARIANT-VARIANT.
ENDIF.
Process on value request
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_VARI.
PERFORM F4_FOR_VARIANT.
I_TAB-FIELD1 = 19.
I_TAB-FIELD2 = 20.
APPEND I_TAB.
I_TAB-FIELD1 = 19.
I_TAB-FIELD2 = 20.
APPEND I_TAB.
I_TAB-FIELD1 = 19.
I_TAB-FIELD2 = 20.
APPEND I_TAB.
I_TAB-FIELD1 = 19.
I_TAB-FIELD2 = 20.
APPEND I_TAB.
I_TAB-FIELD1 = 19.
I_TAB-FIELD2 = 20.
APPEND I_TAB.
PERFORM INITIALIZE_FIELDCAT USING GT_FIELDCAT[].
PERFORM CALL_ALV TABLES I_TAB[]
USING GT_FIELDCAT.
*& Form initialize_fieldcat
text
-->P_GT_FIELDCAT[] text
FORM INITIALIZE_FIELDCAT USING L_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV.
LS_FIELDCAT-FIELDNAME = 'FIELD1'.
LS_FIELDCAT-KEY = 'X'.
LS_FIELDCAT-COL_POS = 1.
LS_FIELDCAT-SELTEXT_S = 'Work center'.
LS_FIELDCAT-SELTEXT_L = 'Work center'.
APPEND LS_FIELDCAT TO L_FIELDCAT.
CLEAR LS_FIELDCAT.
LS_FIELDCAT-FIELDNAME = 'FIELD2'.
LS_FIELDCAT-KEY = ' '.
LS_FIELDCAT-COL_POS = 2.
LS_FIELDCAT-SELTEXT_S = 'Work center2'.
LS_FIELDCAT-SELTEXT_L = 'Work center2'.
APPEND LS_FIELDCAT TO L_FIELDCAT.
CLEAR LS_FIELDCAT.
ENDFORM. " initialize_fieldcat
*& Form call_alv
text
-->P_GT_FIELDCAT text
-->P_I_TAB text
FORM CALL_ALV TABLES P_TAB
USING P_GT_FIELDCAT .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = SY-REPID
IT_FIELDCAT = P_GT_FIELDCAT
I_DEFAULT = 'X'
IS_VARIANT = L_VARIANT
I_SAVE = L_SAVE
TABLES
T_OUTTAB = P_TAB[]
EXCEPTIONS
PROGRAM_ERROR = 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.
ENDFORM. " call_alv
*& Form VARIANT_INIT
text
FORM VARIANT_INIT.
CLEAR L_VARIANT.
L_VARIANT-REPORT = SY-REPID.
ENDFORM. " VARIANT_INIT
*& Form variant_SELECTION_SCREEN
text
FORM VARIANT_SELECTION_SCREEN .
IF NOT P_VARI IS INITIAL.
MOVE L_VARIANT TO LX_VARIANT.
MOVE P_VARI TO LX_VARIANT-VARIANT.
CALL FUNCTION 'REUSE_ALV_VARIANT_EXISTENCE'
EXPORTING
I_SAVE = L_SAVE
CHANGING
CS_VARIANT = LX_VARIANT.
L_VARIANT = LX_VARIANT.
ELSE.
PERFORM VARIANT_INIT.
ENDIF.
ENDFORM. " variant_SELECTION_SCREEN
*& Form F4_FOR_VARIANT
text
FORM F4_FOR_VARIANT.
CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
EXPORTING
IS_VARIANT = L_VARIANT
I_SAVE = L_SAVE
IMPORTING
E_EXIT = L_EXIT
ES_VARIANT = LX_VARIANT
EXCEPTIONS
NOT_FOUND = 2.
IF SY-SUBRC = 2.
MESSAGE ID SY-MSGID TYPE 'S' NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ELSE.
IF L_EXIT = SPACE.
P_VARI = LX_VARIANT-VARIANT.
ENDIF.
ENDIF.
ENDFORM. "F4_FOR_VARIANT
Regards,
Laxmi. -
HOW TO USE FUNCTION MODULE IN ALV
hi guyz
I developed an alv report using join statements .But i got all that fields in a function module. so how can i use function module in alv .
if i got a function module with all the fileds do i need to use select statement.
plz help me.
thanks
sudheerHi,
Hope the following helps..
1)
LOOP AT IT_OUTPUT.
Call the function module to get the tracking number and store the output in the
variable V_TRACKINGNO.
IT_OUTPUT-TRACKING_NO = V_TRACKINGNO.
MODIFY IT_OUTPUT TRANSPORTING TRACKING_NO.
ENDLOOP.
2) Date conversion
DATA: V_CHAR(10) VALUE '2006.11.17'.
DATA: V_DATE TYPE SYDATUM.
CONCATENATE V_CHAR(4) V_CHAR5(2) V_CHAR8(2) INTO V_DATE.
WRITE: V_DATE TO V_CHAR MM/DD/YYYY.
WRITE: / 'MM/DD/YYY Format - ', V_CHAR.
Please make sure to reward points for helpful answers..
Thanks,
Naren -
How to find suitable( existing) function group for a Function Module ?
How to find suitable( existing) function group for a Function Module to be created?
This is FM for converting amounts to text.Hi,
If you are not sure into which Function group your FM should go in then its advised to create a Function group of your own. Its not advised to create a function module in any other function group unless its owned by you since your FM can get deleted by others or it can get changed.
Create your own Function group. But if you want to create in an existing FG then best way is to find out the Function Group by searching for suitable existing Function module then see their function group
Regards,
Sesh -
Error when overriding mx_internal function in mxml file
Hi,
I'm having difficulty overriding an mx_internal function inside an mxml file. I get an error:
1004: Namespace was not found or is not a compile-time constant. StackRenderer.mxml /Layouts/src/example line 12 Flex Problem
<?xml version="1.0" encoding="utf-8"?>
<s:ItemRenderer
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Script>
<![CDATA[
import mx.core.mx_internal;
use namespace mx_internal;
override mx_internal function drawBackground():void{
]]>
</fx:Script>
</s:ItemRenderer>
What am I doing wrong?Sorry for missleading information: I missed the error after I removed "use namespace mx_internal;". However I think I have found a problem. For some reason you get the error in MXML file (probably there are some restrictions for using namespaces in MXML files but I'm not sure). I have created an ActionScript component and it now compiles (for sure):
package
import mx.core.mx_internal;
import spark.components.supportClasses.ItemRenderer;
use namespace mx_internal
public class CustomIRAS extends ItemRenderer
override mx_internal function drawBackground():void {
So I suggest creating ActionScript component instead of MXML.
Michael -
Hi All,
My requirement is souce field format(MM/dd/YY) convert it to target field format(dd-MM-yyyy). I used Date Trans function to achieve the same. The problem is some times the source field may not contain any value. So, I tried exists function some thing like this.
src>exists>input to if functon
src>dateTrans>input to then part of if function.
constant(blank)-->input to else part of if function
Output of if function-->target field.
The problem here is if the the input field is empty, again it is exeuting the DateTrans function and error"Unparsable date".
Pls let me know where I am going wrong...
Thanks & Regards,
Jai Shankar.Hi,
Yes if you have occurance 1..1 you just need to check for "" blank value thats enough.
Source Source
Equals-->IfWithElse-->Target
Constant("") Constant("")
Regards,
Prakash
Maybe you are looking for
-
FM for month and year to Fiscal year period
Hello ABAP Experts, Please suggest a FM to convert month+year to fiscal year period. Suggestions appreciated. Thanks in advance, BWer
-
Hi, How the PAPI WS basically works and how do I configure the PAPI WS to initiate a instance of the BPM process. (OBPM 10g). Please help. Thanks Bibhu
-
Effects & Adjust are missing from Edit
When I click " edit " the Effects & Adjust are missing. It's like I am in some older version of iPhoto. This happened after switching to Adobe Photoshop Elements to do some editing of iPhoto images. First I clicked option apple to restart iPhoto so I
-
Folders won't show some icons when attached to dock
Hello guys I am experiencing a very annoying issue. Turns out that the folders, when put on dock, won't show the icons that are not mac-standard (like .mkv movies, .rar, etc.). Here's a screenshot: http://i162.photobucket.com/albums/t273/rique333/Scr
-
Hello, I have 2 questions: 1. Are there some examples of use BOL/GENIL in WebDynpro (Floor Plan Manager for ABAP)? Or maybe plans to use it by SAP. 2. Does SAP has generic BOL implementention in Java that access GENIL via RFC-interface (FG CRM_GENIL_