Create, Update & Save Functions
Hi All,
This is my code for the requirement to print sales order in ALV Grid Format using OOPS concept.
Please tell me how i should add select button to the ALV Grid in the first column.
Also when i click on CREATE button a new blank line should be added to the alv grid.
when i click on UPDATE button the selected row should become editable & when i click on save then my Ztable should be update with the new values and all the changes made.
The Ztable has fields as of the IT_FIANL table.
I have gone through many links regarding this topic but cant implement it in my code.
REPORT z12darp_shad_so_alv_oops
MESSAGE-ID z12darp1.
*Class definition for handling double click
CLASS event_class DEFINITION DEFERRED.
*Class definition for ALV toolbar
CLASS lcl_alv_toolbar DEFINITION DEFERRED.
*AUTHOR: Darpana. Ahire
*DATE: 28/11/2008
*DESCRIPTION: To printsales order as Interactive ALV using OOPS concept.
*& D A T A D E C L R A T I O N
type-pools: icon.
INCLUDE z12darp_alv_oops.
data: ok_code_2008 like sy-ucomm.
*& Include Z12DARP_ALV_OOPS
*Author: Darpana. Ahire
*Date: 28/11/2008
*Description: ALV Grid Using OOPS concept.
tables: z12Darp_final.
types: begin of ty_vbak,
vbeln type vbeln_va,
erdat type erdat,
vkorg type vkorg,
spart type spart,
end of ty_vbak.
types: begin of ty_vbap,
vbeln type vbeln_va,
posnr type posnr_va,
matnr type matnr,
netpr type netpr,
netwr type netwr_ap,
end of ty_vbap.
types: begin of ty_final,
vbeln type vbeln_va,
erdat type erdat,
vkorg type vkorg,
spart type spart,
posnr type posnr_va,
matnr type matnr,
netpr type netpr,
netwr type netwr_ap,
end of ty_final.
data: wa_vbak type ty_vbak,
wa_vbap type ty_vbap,
wa_final type ty_final.
data: it_vbak type standard table of ty_vbak,
it_vbap type standard table of ty_vbap,
it_final type standard table of ty_final.
data: v_vbeln type vbeln_va.
data: cust type ref to cl_gui_custom_container,
alv type ref to cl_gui_alv_grid,
event_receiver TYPE REF TO event_class.
data: wa_fcat type lvc_s_fcat,
it_fcat type lvc_t_fcat,
wa_layout type lvc_s_layo.
*Declaration for toolbar buttons
DATA : ty_toolbar TYPE stb_button.
data: c_alv_toolbar TYPE REF TO lcl_alv_toolbar. "Alv toolbar
*& S E L E C T I O N S C R E E N
SELECT-OPTIONS: ss_vbeln FOR v_vbeln.
*& I N I T I A L I Z A T I O N
INITIALIZATION.
PERFORM initial.
*& A T S E L E C T I O N - S C R E E N
AT SELECTION-SCREEN.
PERFORM at_sel_scr.
*& S T A R T - O F - S E L E C T I O N
START-OF-SELECTION.
PERFORM sel_records.
PERFORM join_tables.
PERFORM alv_output.
* CLASS lcl_event_receiver DEFINITION
CLASS event_class DEFINITION.
*Handling double click
PUBLIC SECTION.
METHODS:
handle_double_click
FOR EVENT double_click OF cl_gui_alv_grid
IMPORTING e_row e_column.
ENDCLASS. "lcl_event_receiver DEFINITION
* CLASS lcl_event_receiver IMPLEMENTATION
CLASS event_class IMPLEMENTATION.
METHOD handle_double_click.
case e_column.
when 'MATNR'.
read table it_final into wa_final index e_row-index.
set parameter id 'MAT' field wa_final-matnr.
call transaction 'MM03' and skip first screen.
endcase.
ENDMETHOD. "handle_double_click
endclass.
* CLASS lcl_alv_toolbar DEFINITION
* ALV event handler
CLASS lcl_alv_toolbar DEFINITION.
PUBLIC SECTION.
*Event for toolbar
on_toolbar
FOR EVENT toolbar
OF cl_gui_alv_grid
IMPORTING e_object e_interactive,
handle_user_command
for event user_command of cl_gui_alv_grid
importing e_ucomm.
endclass.
* CLASS lcl_alv_toolbar IMPLEMENTATION
* ALV event handler
CLASS lcl_alv_toolbar IMPLEMENTATION.
METHOD on_toolbar.
* Add customized toolbar buttons.
* variable for Toolbar Button
clear ty_toolbar.
ty_toolbar-icon = icon_create.
ty_toolbar-butn_type = 0.
ty_toolbar-text = 'CREATE'.
APPEND ty_toolbar TO e_object->mt_toolbar.
clear ty_toolbar.
ty_toolbar-icon = icon_change.
ty_toolbar-butn_type = 0.
ty_toolbar-text = 'UPDATE'.
APPEND ty_toolbar TO e_object->mt_toolbar.
clear ty_toolbar.
ty_toolbar-icon = icon_system_save.
ty_toolbar-butn_type = 0.
ty_toolbar-text = 'SAVE'.
APPEND ty_toolbar TO e_object->mt_toolbar.
ENDMETHOD. "on_toolbar
method handle_user_command.
case e_ucomm.
when 'CREATE'.
when 'UPDATE'.
endcase.
endmethod. "handle_user_command
ENDCLASS. "lcl_event_receiver IMPLEMENTATION
*& Module STATUS_2008 OUTPUT
* text
MODULE status_2008 OUTPUT.
SET PF-STATUS 'MENU1'.
SET TITLEBAR 'TITLE1'.
ENDMODULE. " STATUS_2008 OUTPUT
*& Module alv_display OUTPUT
* text
MODULE alv_display OUTPUT.
IF cust IS INITIAL.
* Creating object of container
CREATE OBJECT cust
EXPORTING
container_name = 'CUSTOM'.
* Creating object of alv
CREATE OBJECT alv
EXPORTING
i_parent = cust.
** create ALV event handler
* CREATE OBJECT c_alv_toolbar
* EXPORTING
* io_alv_grid = alv.
create object c_alv_toolbar.
* Register event handler
SET HANDLER c_alv_toolbar->on_toolbar FOR alv.
set handler c_alv_toolbar->handle_user_command for alv.
* alv layout
PERFORM alv_layout.
* alv field catalogue
PERFORM fieldcatalog_display.
* Displaying the ALV grid
CALL METHOD alv->set_table_for_first_display(
EXPORTING
is_layout = wa_layout
CHANGING
it_outtab = it_final
it_fieldcatalog = it_fcat ).
*Create object of the event class and setting handler for double click
CREATE OBJECT event_receiver.
SET HANDLER event_receiver->handle_double_click FOR alv.
ENDIF.
ENDMODULE. " alv_display OUTPUT
*& Module USER_COMMAND_2008 INPUT
* text
module USER_COMMAND_2008 input.
case ok_code_2008.
when 'EXT'.
leave program.
when 'BCK'.
leave to screen 0.
when 'UP'.
leave program.
endcase.
endmodule. " USER_COMMAND_2008 INPUT
*& E N D O F M A I N P R O G R A M
*& Form initial
* text
* --> p1 text
* <-- p2 text
FORM initial .
CLEAR: wa_vbak,
wa_vbap,
wa_final.
REFRESH: it_vbak,
it_vbap,
it_final.
ENDFORM. " initial
*& Form at_sel_scr
* text
* --> p1 text
* <-- p2 text
FORM at_sel_scr .
SELECT vbeln
INTO TABLE it_vbak
FROM vbak
WHERE vbeln IN ss_vbeln.
IF sy-subrc <> 0.
MESSAGE e000.
ENDIF.
ENDFORM. " at_sel_scr
*& Form sel_records
* text
* --> p1 text
* <-- p2 text
FORM sel_records .
SELECT vbeln
erdat
vkorg
spart
INTO TABLE it_vbak
FROM vbak
WHERE vbeln IN ss_vbeln.
IF sy-subrc <> 0.
MESSAGE e000.
ENDIF.
SELECT vbeln
posnr
matnr
netpr
netwr
INTO TABLE it_vbap
FROM vbap
FOR ALL ENTRIES IN it_vbak
WHERE vbeln = it_vbak-vbeln.
IF sy-subrc <> 0.
MESSAGE e000.
ENDIF.
ENDFORM. " sel_records
*& Form join_tables
* text
* --> p1 text
* <-- p2 text
FORM join_tables .
SORT it_vbak BY vbeln.
SORT it_vbap BY vbeln posnr.
LOOP AT it_vbap INTO wa_vbap.
READ TABLE it_vbak INTO wa_vbak WITH KEY vbeln = wa_vbap-vbeln
BINARY SEARCH.
wa_final-vbeln = wa_vbak-vbeln.
wa_final-erdat = wa_vbak-erdat.
wa_final-vkorg = wa_vbak-vkorg.
wa_final-spart = wa_vbak-spart.
wa_final-posnr = wa_vbap-posnr.
wa_final-matnr = wa_vbap-matnr.
wa_final-netpr = wa_vbap-netpr.
wa_final-netwr = wa_vbap-netwr.
APPEND wa_final TO it_final.
CLEAR wa_final.
ENDLOOP.
ENDFORM. " join_tables
*& Form alv_output
* text
* --> p1 text
* <-- p2 text
FORM alv_output .
CALL SCREEN 2008.
ENDFORM. " alv_output
*& Form alv_layout
* text
* --> p1 text
* <-- p2 text
FORM alv_layout .
wa_layout-grid_title = 'SALES ORDER'.
wa_layout-zebra = 'X'.
ENDFORM. " alv_layout
*& Form fieldcatalog_display
* text
* --> p1 text
* <-- p2 text
FORM fieldcatalog_display .
* IT_FINAL-VBELN. SALES ORDER NUMBER
CLEAR wa_fcat.
wa_fcat-col_pos ='2'.
wa_fcat-fieldname ='VBELN'.
wa_fcat-tabname ='IT_FINAL'.
wa_fcat-key = 'X'.
wa_fcat-just = 'L'.
wa_fcat-hotspot = ' '.
wa_fcat-lzero ='X'.
wa_fcat-seltext ='SALES ORDER NO.'.
wa_fcat-outputlen = 15.
wa_fcat-ref_table ='VBAK'.
APPEND wa_fcat TO it_fcat.
* IT_FINAL-POSNR. SALES ITEM NUMBER
CLEAR wa_fcat.
wa_fcat-col_pos ='3'.
wa_fcat-fieldname ='POSNR'.
wa_fcat-tabname ='IT_FINAL'.
wa_fcat-key = 'X'.
wa_fcat-just = 'L'.
wa_fcat-hotspot = ' '.
wa_fcat-lzero ='X'.
wa_fcat-seltext ='SALES ITEM NO'.
wa_fcat-outputlen = 15.
wa_fcat-ref_table ='VBAP'.
APPEND wa_fcat TO it_fcat.
* IT_FINAL-ERDAT. DATE ON WHICH DOCUMENT WAS CREATED
CLEAR wa_fcat.
wa_fcat-col_pos ='4'.
wa_fcat-fieldname ='ERDAT'.
wa_fcat-tabname ='IT_FINAL'.
wa_fcat-key = ' '.
wa_fcat-just = 'L'.
wa_fcat-hotspot = ' '.
wa_fcat-lzero ='X'.
wa_fcat-seltext ='DATE OF CREATION'.
wa_fcat-outputlen = 10.
wa_fcat-ref_table ='VBAK'.
APPEND wa_fcat TO it_fcat.
* IT_FINAL-VKORG. SALES ORGANIZATION
CLEAR wa_fcat.
wa_fcat-col_pos ='5'.
wa_fcat-fieldname ='VKORG'.
wa_fcat-tabname ='IT_FINAL'.
wa_fcat-key = ' '.
wa_fcat-just = 'L'.
wa_fcat-hotspot = ' '.
wa_fcat-lzero ='X'.
wa_fcat-seltext ='SALES ORG'.
wa_fcat-outputlen = 10.
wa_fcat-ref_table ='VBAK'.
APPEND wa_fcat TO it_fcat.
* IT_FINAL-SPART. DIVISION
CLEAR wa_fcat.
wa_fcat-col_pos ='6'.
wa_fcat-fieldname ='SPART'.
wa_fcat-tabname ='IT_FINAL'.
wa_fcat-key = ' '.
wa_fcat-just = 'L'.
wa_fcat-hotspot = ' '.
wa_fcat-lzero ='X'.
wa_fcat-seltext ='DIVISION'.
wa_fcat-outputlen = 10.
wa_fcat-ref_table ='VBAK'.
APPEND wa_fcat TO it_fcat.
* IT_FINAL-MATNR. MATERIAL NUMBER
CLEAR wa_fcat.
wa_fcat-col_pos ='7'.
wa_fcat-fieldname ='MATNR'.
wa_fcat-tabname ='IT_FINAL'.
wa_fcat-key = ' '.
wa_fcat-just = 'L'.
wa_fcat-hotspot = ' '.
wa_fcat-lzero ='X'.
wa_fcat-seltext ='MATERIAL NUMBER'.
wa_fcat-outputlen = 20.
wa_fcat-ref_table ='VBAP'.
APPEND wa_fcat TO it_fcat.
* IT_FINAL-NETPR. NET PRICE
CLEAR wa_fcat.
wa_fcat-col_pos ='8'.
wa_fcat-fieldname ='NETPR'.
wa_fcat-tabname ='IT_FINAL'.
wa_fcat-key = ' '.
wa_fcat-just = 'L'.
wa_fcat-hotspot = ' '.
wa_fcat-lzero ='X'.
wa_fcat-seltext ='NET PRICE'.
wa_fcat-outputlen = 15.
wa_fcat-ref_table ='VBAP'.
APPEND wa_fcat TO it_fcat.
* IT_FINAL-NETWR. NAET VALUE
CLEAR wa_fcat.
wa_fcat-col_pos ='9'.
wa_fcat-fieldname ='NETWR'.
wa_fcat-tabname ='IT_FINAL'.
wa_fcat-key = ' '.
wa_fcat-just = 'L'.
wa_fcat-hotspot = ' '.
wa_fcat-lzero ='X'.
wa_fcat-seltext ='NET VALUE'.
wa_fcat-outputlen = 15.
wa_fcat-ref_table ='VBAP'.
APPEND wa_fcat TO it_fcat.
ENDFORM. " fieldcatalog_display
Regards,
Darpana.
Edited by: Darpana Ahire on Dec 3, 2008 7:10 AM
Edited by: Matt on Dec 4, 2008 12:04 PM - added tags
im99_chs wrote:
I have created a package with some functions in it.Keep in mind that these functions requires PL/SQL code to be executed. Thus it needs a context switch from the SQL engine (executing your view code) to the PL/SQL engine (to do the function call).
This may work fine for smaller data sets. But it does not scale well as context switches are expensive operations with inherent latency. The more switches there are, the bigger the execution time chunk required for context switching.
The ideal is to rather use SQL to perform the work of the function. SQL code can implement if-then-else logic via the DECODE() SQL function and SQL CASE command. Analytical functions can be used for complex aggregation and calculation.
If a user define (PL/SQL) function is needed, then ensure that the function is as fast as possible (minimal moving parts), and consider defining it as a deterministic function if the same input always produces the same output.
Similar Messages
-
BAPI/function module to create/update vendor master data
Hi
We are on ECC 50 and have a need to update vendor master data through a programatic interface ( non-dialog ) with ABAP. What is a good function module that can be used to create/update vendor master data - I looked at BAPI_VENDOR_CREATE and did not find any input interfaces that can be passed to this BAPI.
Previous experiences with the right BAPI for this purpose that can be shared is appreciated. <REMOVED BY MODERATOR>
Edited by: Alvaro Tejada Galindo on Feb 26, 2008 5:58 PMHi Kiran,
If you want to load the vendor data into sap its better to go with LSMW batch input program.
object 0040
method 0001
program name RFBIKR00
Program type B
this would be a good choice. Recently i did the same. -
Create, Update and Delete Partner functions for a Functional location.
Hello
I have a requirement where I need to
a. Create / Assign Partner functions to a Functional location,
b. Update the new Partners values ( PARNR ) for particular Partner Functions ( Replace new Partner values in place of old partner values )
c. Delete the Partner values and Partner functions for a Functional location.
when the above changes are done, the changes should be reflected in IFLO ( Table-IFLOT ) and IHPA ( Table-IHPA ) transactions .
I wanted to make the above changes by using FM's or BAPI. I have searched many forums and threads, but still I was not able to get the correct solution.
Can anyone help me out in finding BAPI or FM's to do the above changes. ?
Note : I will have an excel sheet which has coloumns like Functional location, Partner function, Old Partner value ( PARNR ) and New Partner value (PARNR ). This data needs to be updated in IFLO and IHPA.
Thanks and Regards,
Karthik Ganti.Hello
I have a requirement where I need to
a. Create / Assign Partner functions to a Functional location,
b. Update the new Partners values ( PARNR ) for particular Partner Functions ( Replace new Partner values in place of old partner values )
c. Delete the Partner values and Partner functions for a Functional location.
when the above changes are done, the changes should be reflected in IFLO ( Table-IFLOT ) and IHPA ( Table-IHPA ) transactions .
I wanted to make the above changes by using FM's or BAPI. I have searched many forums and threads, but still I was not able to get the correct solution.
Can anyone help me out in finding BAPI or FM's to do the above changes. ?
Note : I will have an excel sheet which has coloumns like Functional location, Partner function, Old Partner value ( PARNR ) and New Partner value (PARNR ). This data needs to be updated in IFLO and IHPA.
Thanks and Regards,
Karthik Ganti. -
Problem with SaveAs function using random paths.
The Setup:
Part 1) I have a folder-level script that allows me to perform a SaveAs function from within forms. I do this as a way to save the document quietly in the background. The effect is that the file is overwritten by a copy of itself. The script is:
var mySaveAs = app.trustedFunction( function(oDoc,cPath,cFlName)
app.beginPriv();
cPath = cPath.replace(/([^\/])$/, "$1/");
try{
oDoc.saveAs(cPath + cFlName);
}catch(e){
app.alert("Error During Save");
app.endPriv();
Part 2) From within my documents, I perform the save by calling the function below:
function runSave()
{if(typeof(mySaveAs) == "function") {
var pathArray = this.path.split("/");
var myFileName = pathArray[pathArray.length-1];
var cPath = this.path.slice(0,myFileName);
mySaveAs(this, cPath, myFileName);
} else {
app.alert("Missing Save Function\n" + "Please contact forms administrator");
Part 3) I have several large forms that utilize an autosave to call the save function according to a time interval of 5 minutes, using:
app.setInterval(runSave(), 300000);
The Problem:
Part 1) The autosave feature works fine and it works silently in the background. However, I start to experience problems when I have two forms open at the same time. If, for example, I have a form from one folder open, and open a form from a second folder, the save feature will sometimes save the active document to it's original folder (as intended, overwriting itself and creating an autosave) or sometimes save to the second document's original folder. This leaves me with an updated (autosaved) copy of the document in the wrong folder, and a non-updated copy in the original folder. This seems to vary depending on which document I opened last and/or which document is currently active. Though I can't seem to find the right combination.
It's as thought the "this.path" is getting confused.
Part 2) Worse still, if the two documents have the same name, as is often the case with these forms, any incorrect filing when saving causes an overwrite of the second document and loss of data.
Part 3) To makes things maddening, this also happens at times when no second folder or second document is open. Instead, the misfiling saves the single, active document to a recently accessed folder. For example, I'll open a local folder and open a Word doc, close the doc and the folder, go to a different folder in a different root (a networked folder), open the form, and it autosaves to the local machine in the folder with the Word doc. So now not only do I have a non-updated copy in my correct folder, I have no idea where the updated copy was actually saved to until I come across it some time later.
Part 4) Again, worse still, the previously accessed folder might happen to be one that contains a document with the same name, and that document gets overwritten by the autosave. I'll have no idea that the form has been overwritten until I happen to open it some time later and see that it contains data from a totally different form.
What is going on and how do I stop it?
Adobe Acrobat X Pro on a PC.Thank you, that is helpful to understand. I'd like to keep it as 3 parameters, as all my documents currently output 3 to the trusted function. And I'd still like to keep the error catch, but I'm not sure why the previous trusted function from the tutorial is no longer working, so I just want to run this by you:
safeSaveAs = app.trustPropagatorFunction(function(theDoc,thePath,theFileName){
app.beginPriv();
var fullPath = (thePath + theFileName);
try {
theDoc.saveAs({cPath:fullPath});
} catch(e) {
app.alert("Error During Save");
app.endPriv();
myTrustedSaveAs = app.trustedFunction(function(theDoc,thePath,theFileName){
app.beginPriv();
safeSaveAs(theDoc,thePath,theFileName);
app.endPriv(); -
I use PaleMoon now trying to get rid of advertising sharks. I have WINXP still - need assistive-technology computer for pain so taking time on getting new computer.
I have been severely sabotaged by advertising conglomerates selling my private information. They have no right -yet they do whatever they want. Anyhow...I've tried to OPT-OUT of EVERYTHING POSSIBLE. I've tried 5 places found. Google, NAI, DAA, & FIREFOX HELP said go to about:config was instructed to turn "from false to true" the "privacy.tracking.protection.enabled" .But I couldn't keep this setting because this also has to be set to false to use any saved log-on's to my accounts., and add-on AD BLOCK PLUS 2.6.7 when I was on Firefox & had some ticks and now it is disabled because it won't work with PaleMoon 25.2.1
This case is about GOOGLE OPT-OUT. Starting here: http://www.google.com/settings/ads?hl=en&sig=ACi0TCgWymel0CNWxdcnEWPzWNs9wDd7cVQHxHsmtz4w30CAyHk7MqyzzZdGh3m6FpDaJsKmunTLEvJZY5LAm3h6gIdzE30L-Q
There are 2 columns. The left one "ADS ON GOOGLE" NEVER RETAINS AFTER LOG-OFF. The right column "Google ads across the web
" seems to retain sometimes - if I remember right it falls off after a period of time as opposed to after just LOGGING-OFF. Below the columns there are options, but I don't have a GOOGLE ACCOUNT.
Also down there is this link: https://support.google.com/adsense/troubleshooter/1631343?hl=en ...you see the box with this: Advertising industry program participation
Google is a participating member of groups that have developed industry privacy standards like the Ad-Choices icon for online advertising.
Group Location
Network Advertising Initiative United States
Digital Advertising Alliance (DAA) United States
European Digital Advertising Alliance Europe
Digital Advertising Alliance of Canada Canada
....I clicked OPTED OUT FOR NAI on their link http://www.networkadvertising.org/
...I clicked OPTED OUT FOR DAA on their link http://www.aboutads.info/
...I clicked PROTECT MY CHOICES and downloaded the app.
These 1st 2 links used to have the same trouble and didn't retain ANYTHING and wouldn't re OPT-OUT ANY UNTIL THEY WERE SATIATED - saying I didn't have 3rd party cookies allowed when I did - this took hours.
I sent numerous trouble reports to them that they ignored - then I think I sent one to Firefox and it is much better but still not completely right. Today DAA retains 106 out of 122 and if I repeatedly RE-OPT-OUT successively I can get it to 121 out of 122 - never completely. (currently the one not taking is Accuen Inc. but it changes periodically - makes me think they set one up to take my info and then share it with all of them - lol )
Same for NAI currently I started with 94 out of 96 - next re-OPTED-OUT got it to 95 out of 96 and no further and same co. Accuen Inc (accuenmedia.com ) wouldn't update.
NOTE: I was copy/pasting the list of NON-OPT-OUT'S to them and my own document file to try and find trends/problems...now NAI programmers protected the list from being able to be COPIED AND PASTED!!! That's the opposite of being open and interested in making this work, right? Why would they want to allow us to OPT-OUT of their criminal espionage behavior...RIGHT? (lol) FYI: I recorded that the big one that was always retained before this one was...MEDIA MATH INC.
MANY Opt-outs would drop off while on-line and ALL would drop-off once logged-off. Now it's retaining most once logged off - but it hasn't been long enough to tell if they'll fall back into their bad habits as they've done before...
This has been going on forever for me - I've been reporting this malfunction since 2013.
Of course I downloaded PROTECT MY CHOICES FOR FIREFOX via NAI AND DAA'S links ...http://www.aboutads.info/PMC#protect-your-choices-for-firefox ............they both go to the same place???.....PROTECT MY CHOICES http://www.aboutads.info/plugin/install/firefox....that seems odd...it's as if they are the same entity then. ABOUTADS is DAA'S WEBSITE. NAI'S IS NETWORKADVERTISING.ORG so why would NAI use DAA'S PROTECT MY CHOICES app?
Lastely, I also requested that the COOKIES NAMES BE UNIFORMLY IDENTIFIABLE. All the OPT-OUT COOKIES that are to be forevermore retained on my computer and that I am to trust the EVERY FUNCTION OF - well they all have different COOKIE NAMES!! Most of the names you can not tell that they are OPT-OUT COOKIES!! - SO NOWWW They have created another problem.
We can no longer just "DELETE ALL COOKIES".
PLUS, we can no longer go through our cookies and delete individual ones that snuck through.
Every one of the OPT-OUT COOKIES SHOULD SAY "OPT-OUT" IWITHIN THEIR NAME OF THEIR COOKIE - PERIOD. RIGHT? (LOL) For real. Why was this mess was allowed?
REALLY IN MY OPINION THESE COMPANIES SHOULD BE BLOCKED AT THE LOCAL PHONE COMPANIES LEVEL - IN OUR SERVERS. We should not have to deal with them. Same thing with viruses, malware and such beasts. But I digress.
In summary:
1.)Google Analytics OPT-OUT Browser Add-on 0.9.6 doesn't retain OPT-OUT settings
2.) JAVA refuses to create updates for WinXP/FireFox/PaleMoon.
3.) DAA & NAI still don't retain ALL OPT-OUT settings and never completely OPT-OUT all companies.
4.) OPT-OUT cookies should be uniformly names with the words OPT-OUT in their titles.
5.) Ad Block Plus 25.6.7 doesn't work for Pale Moon and there is no alternative - (didn't work great in FireFox)
Right now I'm mainly interested in #1)retaining my GOOGLE OPT-OUTS while on line AND while logged off since it is attacking my computer and steeling all the speed until it freezes my keyboard.
Currently I am trying to remember to run through 3. OPT-OUTS every time I log on.
Thanks so much!hello, palemoon's support forums are here: http://forum.palemoon.org/
-
Is there a save function for online forms?
Hi, I've created an online form which requests quite a lot of information from those who it is sent to. Because of its size, I have made use of the skip logic rules to so that users can quickly skip sections that don't apply to them. Notwithstanding this, the form asks questions which users may need to reseach and come back to so it wouldbe really useful if the form had a save function. Does anyone know if such a function exists and if not, whether there are there imminent plans to develope one?
If not, regreattably I will have to try and find another solution for online information gather that has a save and return function.hi randy
I wholely support the request for a save feature for online forms, any idea of an ETA for this?
Also to expand on this- the ability to print the web form would be brillant.
a few options for the web forms submit to print, save.
Web forms after/before submission maybe to save as a pdf locally - which then could be printed out. -
How to create the INBOUND Function Module for INBOUND IDOCs
Hi Friends,
Can any Suggest me How to proceed to Create an INBOUND Function Module for Processing the INBOUND IDOCS
which are recieved from XI Server ?
I am working in SAP-ISU
Here i will recieve the INBOUND IDOCs for the Meter Reading Orders.
We have a Standard INBOUND FUNCTION MODULE
IDOC_INPUT_ISU_MR_UPLOAD
which Uploads the Meter Reading Results.
I copied the Same function Module into ZIDOC_INPUT_
and working on it.
Can any one suggest me, whether i am going in correct way or not.
In IDOC_INPUT_ISU_MR_UPLOAD Inbound fun module,
BAPI_MTRREADDOC_UPLOAD is used to Update or Insert the Meter Reading Results,
My requirment is to Insert and Update the Meter Reading Orders which are Inbounded from XI.
Can I Use the Same BAPI
BAPI_MTRREADDOC_UPLOAD
to Update the below fields,
EABL-SERNR
EABL-ZWNUMMER
EABLG-ABLESGR
EABL-V_ZWSTAND
EABL-N_ZWSTAND
EABL-ABLHINW
EABL-ZSKIPC
EABL-ADAT
EABL-ATIMTATS
EABL-ADATTATS
EABL-ATIM
EABL-ZMESSAGE
EABL-ABLESER(Meter reader number)
Kindly Suggest me,
Thanks in Advance,
GaneshHello Ganesh
I think you are going completely astray with you z-function module for IDoc processing.
If you look at TABLES parameter METERREADINGRESULTS (type BAPIEABLU ) of BAPI_MTRREADDOC_UPLOAD you will find many of the requested fields already:
EABL-SERNR => BAPIEABLU-SERIALNO
EABL-ZWNUMMER =>REGISTER
EABLG-ABLESGR
EABL-V_ZWSTAND
EABL-N_ZWSTAND
EABL-ABLHINW
EABL-ZSKIPC
EABL-ADAT
EABL-ATIMTATS => ACTUALMRTIME
EABL-ADATTATS => ACTUALMRDATE
EABL-ATIM
EABL-ZMESSAGE
EABL-ABLESER(Meter reader number)
Field EABL-ZMESSAGE appears to be custom field (at least I cannot find it on ECC 6.0). If this field was added using include CI_EABL then you probably can get these values into the BAPI using the EXTENSIONIN parameter.
Check routine CHECK_UPLOADRECORDS in the BAPI which allows two extension structures:
- BAPI_TE_EABL
- BAPI_TE_EOSB
Not surprisingly BAPI_TE_EABL contains the include CI_EABL.
Regards
Uwe -
How to create a Z Function Module
Hi,
I am trying to create a Z function module in BI 7.0 that i can use in Transformations.
SE37> Name of FM.Create..>
It is prompting me to enter Function Group.
What is Function Group and How can i create a new function group (Detail Steps please)
and steps involved in creating a Function Module in BI 7.0
Thanks in AdvanceHi,
Function Group is just like a folder under which we can store n no. of function modules for organizational purpose. If u want any global declarations we will declare at function Group Level.
It is mandatory to save a function module under one function group. Select Goto menu item, select Function Group, then select, create function group in SE37. Just give the technical name and description and save.
Hope this helps u..
Regards
Ramakrishna Kamurthy -
Update partner function in KNVP table using FM sd_customer-maintain_all
Hi All,
I have to update Partner Function PARVW in KNVP table using FM sd_customer_maintain_all.
I had already created a BDC program for updating which is running successfully.
But my requirement is to create a BAPI using FM customermaintain_all.
Ex: Tcode VD02
KUNNR PARVW KUNN2
Old data 123 Z1 70006666
123 Z2 70007777
Req. output 123 Z1 70006666
123 Z1 70007777
PARVW Z2 should not exist after updation.
When updating, I am getting the error message to my inbox as
Error Info... F2 802: System error in table KNVP
The above error is triggered while committing work after execution of SD_CUSTOMER_MAINTAIN_ALL.
The options I tried while looping at internal table containing kunnr, parvw & kunn2
CALL FUNCTION 'SD_CUSTOMER_MAINTAIN_ALL'
EXPORTING
I_KNA1 = w_kna1
I_KNB1 =
I_KNVV = w_knvv
I_BAPIADDR1 =
I_BAPIADDR2 =
I_MAINTAIN_ADDRESS_BY_KNA1 = ' '
I_KNB1_REFERENCE = ' '
I_FORCE_EXTERNAL_NUMBER_RANGE = ' '
I_NO_BANK_MASTER_UPDATE = ' '
I_CUSTOMER_IS_CONSUMER = ' '
I_RAISE_NO_BTE = ' '
PI_POSTFLAG = 'X'
PI_CAM_CHANGED = ' '
PI_ADD_ON_DATA =
I_FROM_CUSTOMERMASTER = ' '
IMPORTING
E_KUNNR =
O_KNA1 =
E_SD_CUST_1321_DONE =
TABLES
T_XKNAS =
T_XKNBK =
T_XKNB5 =
T_XKNEX =
T_XKNVA =
T_XKNVD =
T_XKNVI =
T_XKNVK =
T_XKNVL =
T_XKNVP = I_XKNVP
T_XKNZA =
T_YKNAS =
T_YKNBK =
T_YKNB5 =
T_YKNEX =
T_YKNVA =
T_YKNVD =
T_YKNVI =
T_YKNVK =
T_YKNVL =
T_YKNVP = i_yknvp ***
T_YKNZA =
T_UPD_TXT =
EXCEPTIONS
CLIENT_ERROR = 1
KNA1_INCOMPLETE = 2
KNB1_INCOMPLETE = 3
KNB5_INCOMPLETE = 4
KNVV_INCOMPLETE = 5
KUNNR_NOT_UNIQUE = 6
SALES_AREA_NOT_UNIQUE = 7
SALES_AREA_NOT_VALID = 8
INSERT_UPDATE_CONFLICT = 9
NUMBER_ASSIGNMENT_ERROR = 10
NUMBER_NOT_IN_RANGE = 11
NUMBER_RANGE_NOT_EXTERN = 12
NUMBER_RANGE_NOT_INTERN = 13
ACCOUNT_GROUP_NOT_VALID = 14
PARNR_INVALID = 15
BANK_ADDRESS_INVALID = 16
TAX_DATA_NOT_VALID = 17
NO_AUTHORITY = 18
COMPANY_CODE_NOT_UNIQUE = 19
DUNNING_DATA_NOT_VALID = 20
KNB1_REFERENCE_INVALID = 21
CAM_ERROR = 22
OTHERS = 23.
IF sy-subrc eq 0.
Commit work and wait.
Endif.
All above tables have a field called KZ which has options
U-update
D-delete
I-insert
E- (I dont know)
Ex: T_XKNVP structure = KNVP Structure + Field KZ.
Documentation for this FM is not Available in English or German
1. I tried sending Z2 KZ as D first & Z1 with KZ as I with business partner of Z2 (KUNN2)
as single update.
Ex: T_XKNP table
KUNNR PARVW KUNN2 KZ
123 Z2 70007777 D
123 Z1 70007777 I
2. I tried it as a separate delete record and insert record i.e calling the FM twice .
3. I tried passing table T_YKNVP with old partner data + TXKNVP table new partner data
Ex: T_YKNP table
KUNNR PARVW KUNN2 KZ
123 Z2 70007777 U or space (I tried both one after another)
4. All combinations for field KZ are tried.
Please help me to overcome this problem.
I ) I need which parameters are to be passed to FM for updating partner function in KNVP table .
II) Do I need to pass structure I_KNA1 or I_KNVV to FM ? (Blank or with values corresponding to
partner function ).
III) Any sample code which can guide me.
Even a small hint or clue from you will certainly help me.
Thanks in Advance.
AJAXi have the same problem. I need to update the partner function PARVW thru a program that i created. I tried to use this FM but it didn't work. Anyone knows another FM that i can use to update the KNVP table?
-
Safari question here... Can I purchase a browser update for my mac book? I have OSX 10.6.8 and the "update software" function won't let me get past Safari 5.1.10. Please tell me I don't need a new computer just yet... Thx!!
You need to upgrade OS X.
Upgrading to Yosemite
You can upgrade to Yosemite from Lion or directly from Snow Leopard. Yosemite can be downloaded from the Mac App Store for FREE.
Upgrading to Yosemite
To upgrade to Yosemite you must have Snow Leopard 10.6.8 or Lion installed. Download Yosemite from the App Store. Sign in using your Apple ID. Yosemite is free. The file is quite large, over 5 GBs, so allow some time to download. It would be preferable to use Ethernet because it is nearly four times faster than wireless.
OS X Mavericks/Yosemite- System Requirements
Macs that can be upgraded to OS X Yosemite
1. iMac (Mid 2007 or newer) - Model Identifier 7,1 or later
2. MacBook (Late 2008 Aluminum, or Early 2009 or newer) - Model Identifier 5,1 or later
3. MacBook Pro (Mid/Late 2007 or newer) - Model Identifier 3,1 or later
4. MacBook Air (Late 2008 or newer) - Model Identifier 2,1 or later
5. Mac mini (Early 2009 or newer) - Model Identifier 3,1 or later
6. Mac Pro (Early 2008 or newer) - Model Identifier 3,1 or later
7. Xserve (Early 2009) - Model Identifier 3,1 or later
To find the model identifier open System Profiler in the Utilities folder. It's displayed in the panel on the right.
Are my applications compatible?
See App Compatibility Table - RoaringApps.
Upgrading to Lion
If your computer does not meet the requirements to install Mavericks, it may still meet the requirements to install Lion.
You can purchase Lion at the Online Apple Store. The cost is $19.99 (as it was before) plus tax. It's a download. You will get an email containing a redemption code that you then use at the Mac App Store to download Lion. Save a copy of that installer to your Downloads folder because the installer deletes itself at the end of the installation.
Lion System Requirements
1. Mac computer with an Intel Core 2 Duo, Core i3, Core i5, Core i7,
or Xeon processor
2. 2GB of memory
3. OS X v10.6.6 or later (v10.6.8 recommended)
4. 7GB of available space
5. Some features require an Apple ID; terms apply. -
Creating / updating vendor master from CREMAS03
Hi All,
I am getting vendor master data from external system and SAP XI will convert this into Idoc of message type CREMAS03. I would like to create/update vendor master in R/3 system from Idoc CREMAS03. Which function module / BAPI will cater to this need.
Thanks and best regards
KalingeriHi
Check in WE57 using the Message type & Idoc type & direction.
IDOC_INPUT_CREDITOR & IDOC_INPUT_CREDITOR_MDM are the the two Func modules being used. You can use any one of them based on your reuirement
Thanks & Regards
Kishore -
Created/Updated User in Apex 4.0 does not match valid application users
We are working on a new install of Apex 4.0 - new application and seeing some odd values on the page details.
For many of the first pages in the application (1-20 and 101), click to get Page Attributes then the Name tab. The yellow box on the bottom shows each page as:
Created: 5 weeks ago - ADMIN
Updated: 10 months ago - <Name varies per below>
Pages 1/5 = DEMO
Pages 2/4 = SBKENNED
Pages 6-10 = SBKENNED
Page 20 = DPEAKE
Page 101 = MIKE
The rest of the pages have our normal developer and dates.
Not a huge deal, but looks very odd.Custom Authentication is behaving like an End User account, which is good - no developer tabs at the bottom. I used something similar to Chapter 11 of the Advanced Tutorials guide:
CREATE OR REPLACE FUNCTION acl_custom_auth (
p_username IN VARCHAR2,
p_password IN VARCHAR2)
RETURN BOOLEAN IS
BEGIN
FOR c1 IN (SELECT 1
FROM acl_employees
WHERE upper(userid) = upper(p_username)
AND upper(last_name) = upper(p_password))
LOOP
RETURN TRUE;
END LOOP;
RETURN FALSE;
END;
/ -
BAPI or FM to create/update variant configuration
Is there a BAPI or FM to create/update variant configuraion?
There is one for sales order BAPI_SALESORDER_CREATEFRONDAT1 to create VC while creating SALES order.
How do you do create VC while creating PO?
Thanks.HI,
There are two different Function Modules used to create service product and material product in CRM system.
CRMXIF_PRODUCT_MATERIAL_SAVE for creating product of type material
and CRMXIF_PRODUCT_SERVICE_SAVE for creating product of type service.
Regards,
PP -
Interactive Gantt chart & save functionality
I've been trying to develop an interactive Gantt chart within Web Dynpro ABAP. Things have been going fine and altough there doesn't seem to be much documentation available, I've managed to get a simple Gantt chart WD application up and running.
The following is said in the documentation:
"It is possible to store changes made within the displayed Gantt chart as data structures again in the back end."
I understand this that if I do changes to the Gantt chart, I should be able to "track" these changes in my code (and for example save the changes to database or whatever). Anyhow, I am not able to get this done. I've put break points to the event handler methods, and read the XML from the context node, but the XML has not changed.
I also enabled the SAVE functionality for the Gantt (in the XML), which made the Save-button visible. If I click the save-button, I would assume that at this point the XML is updated with the refreshed chart data. Anyhow, this does not seem to happen. The XML seem to have lost the relevant part of it (=basically everything under the <graph> tag, which would include the changes (this same problems was addressed also before: Interactive Gantt chart - how to receive updated XML after user changes)).
Any hints are welcome. I guess that this should not be impossible. I assume that for example in cProjects (which uses Gantt chart a lot) is using this functionality - unfortunately I don't have an access to a cProjects system.
Kind regards,
KarriLong time, hah..
Anyways thanks to behave like a responsible person on SCN and taking care of your threads..
Liked. -
How Create procedure or function with ADO ?
Hello,
How Create procedure or function with ADO?It's my question.
Thanks.
HenriThis message if post by Taiwan-ChangHaw-Oracle-Stored-Procedure-For-Business-Rule-Club
public bool ConnectDatabase()
try
{ string strConnectionString =
"Provider=OraOLEDB.Oracle" +";"+
"Data Source=" + ConnectionParams.Datasource +";"+
"User Id =" + ConnectionParams.Username +";"+
"Password =" + ConnectionParams.Password;
m_conn=new ADODB.Connection();
m_conn.ConnectionString=strConnectionString;
m_conn.Open("","","",0); //i_"YYAOl Open the connection
catch(Exception e)
{ System.Windows.Forms.MessageBox.Show(e.Message);
return false;
return true; //YYAOl_B>3I9&connected successfully
public void InsertDescription(string p_product,string p_language,string p_tname,string p_tdescription)
{ string sql="{Call inserttranslateddescription(?,?,?,?,?)}";
try
{ ADODB._Command cmd=new ADODB.Command();//Create a command object
cmd.ActiveConnection=m_conn; //Set its active connection to open connection
ADODB.Properties properties=cmd.Properties;//Get the command properties into ADODB Properties object
IEnumerator ienum=properties.GetEnumerator();//Get an enumerator on above properties
ADODB.Property singleprop;
while(ienum.MoveNext()) //iterate through the enumerator
{singleprop=(ADODB.Property)ienum.Current;//Get the current property from enumerator
string propname= singleprop.Name; //Get the name of current property
if(propname.Equals("NDatatype")) //if the property is 'NDatatype' set its value to true
singleprop.Value=true;
cmd.CommandType=ADODB.CommandTypeEnum.adCmdText;
int pid=Int32.Parse(p_product);
ADODB._Parameter langid =cmd.CreateParameter("langid", ADODB.DataTypeEnum.adChar,ADODB.ParameterDirectionEnum.adParamInput, 100,p_language);
ADODB._Parameter productid =cmd.CreateParameter("productid", ADODB.DataTypeEnum.adNumeric,ADODB.ParameterDirectionEnum.adParamInput, 100,pid);
ADODB._Parameter tname =cmd.CreateParameter("tname", ADODB.DataTypeEnum.adBSTR,ADODB.ParameterDirectionEnum.adParamInput, 50,p_tname);
ADODB._Parameter tdescription=cmd.CreateParameter("tdescription",ADODB.DataTypeEnum.adBSTR,ADODB.ParameterDirectionEnum.adParamInput, 50,p_tdescription);
ADODB._Parameter check =cmd.CreateParameter("check", ADODB.DataTypeEnum.adNumeric,ADODB.ParameterDirectionEnum.adParamOutput,100,0);
cmd.Parameters.Append(langid);
cmd.Parameters.Append(productid);
cmd.Parameters.Append(tname);
cmd.Parameters.Append(tdescription);
cmd.Parameters.Append(check);
cmd.CommandText=sql;
//Execute the command to insert product details in database
object recs;
object param=p_language;
cmd.Execute(out recs,ref param,1);
ienum.Reset();
while(ienum.MoveNext()) //iterate through enumerator
{ singleprop=(ADODB.Property)ienum.Current;//Get the current property in to Property object
string propname= singleprop.Name; //Get the name of current property
if(propname.Equals("NDatatype")) //if it is 'NDatatype' set its value to true
singleprop.Value=false;
IEnumerator iprop=cmd.Parameters.GetEnumerator();//Get the enumerator for command parameters
while(iprop.MoveNext()) //loop through enumerator
{ //Get the current parameter in enumerator
ADODB._Parameter checkval=(ADODB._Parameter)iprop.Current;
if(checkval.Name.Equals("check")) //if the parameter is 'check'
if(checkval.Value.ToString().Equals("0")) //If check's value is zero data was inserted
System.Windows.Forms.MessageBox.Show("Product details Inserted successfully");
else
System.Windows.Forms.MessageBox.Show("Product Details Updated");//else data was updated
catch(Exception e)
System.Windows.Forms.MessageBox.Show(e.Message);//Display any error message
}
Maybe you are looking for
-
Trying to connect 2010 Mac mini to alba hd tv but can't get it to work, any theories?
Trying to connect 2010 Mac mini to alba hd tv but can't get it to work, any theories?
-
Error when posting an goods issue of movement type 501: order not contain
I tried to post an goods issue of movment type 501 to a stock transport order. But I get the error as below. Document 4500000130 does not contain any selectable items Message no. M7 064 Diagnosis The document or item entered cannot be adopted. Possib
-
Hello, I am having problems loading all EXS instruments in Logic Pro. I have created a custom EXS instrument with my own samples, and even when i try to load basic things like the garage band "Hip-Hop Kit" drums, it takes at least 10 minutes to load
-
Calling a VI in a subpanel with parameters inside an event structure and using an abort button
Hi all, I have a control panel with a tab control and two tabs have a sub panel in them. At runtime I load the VIs I want in to the sub panels. In the control panel event structure I want to start each of the VIs and monitor the execution state so
-
Format code cannot appear in date input format - IW related
Hi, please explain what I'm doing wrong: SQL> select to_char(sysdate, 'YYYY-IW') from dual; TO_CHAR 2010-48 SQL> select to_date('2010-22', 'YYYY-IW') from dual; select to_date('2010-22', 'YYYY-IW') from dual ERROR at line 1: ORA-01820: format co