CRM Quotation: Attachment with template: only first item shown
Hi all,
I created a webservice with WS_DESIGN_TOOL to fill a WORD template with the data of a quotation.
The header data looks fine, but from item data only the first item is shown. by debugging the generated FM I saw, the there are entries in data_tab for every item. I think my problem is placed in the WORD template. What do I have to do to loop over all items? The following XML-Tags in template deliver only the first item
<itemsofheader>
<allitemsoforder>
<item>
<btitemconditionset>
<allitemconditionlines>
<item>
<kwertprt />
<koein />
<kawrtprt />
</item>
</allitemconditionlines>
</btitemconditionset>
<description />
</item>
</allitemsoforder>
</itemsofheader>
I expected, there will be a loop automatically when there is a list of items, but it isn't. What is my mistake.
regards
Martin
<?xml version='1.0' ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes" />
<xsl:template match="/">
<xsl:MT_messagetype>
<xsl:for-each select = "item">
<item>
<xsl:value-of select="item"/>
</item>
</xsl:for-each>
</xsl:MT_messagetype>
</xsl:template>
</xsl:stylesheet>
Similar Messages
-
Email attachment with .txt file (first line blank in the file)
Hi all ,
Iam trying attach .txt file to email , the file that iam accessing from server . But first line blank (extra) even though i dont have blank line in original file .Can any help me out to resolve this issue?
<u>Example</u> original file
12345 aa pq
<u>Email attachment file</u>
-> This line
12345 aa pq
This is my code:
REPORT ZTEST_FILE .
DATA:BEGIN OF t_upload occurs 0,
matnr LIKE zwplcsmev-matnr,
zwgehrrg LIKE zwplcsmev-zwgehrrg,
zwgehrct LIKE zwplcsmev-zwgehrct,
zwgbev LIKE zwplcsmev-zwgbev,
zwpldt LIKE zwplcsmev-zwpldt,
zwacdt LIKE zwplcsmev-zwacdt,
END OF t_upload.
*DATA: maildata type sodocchgi1.
*DATA: mailtxt type table of solisti1 with header line.
*DATA: mailrec type table of somlrec90 with header line.
DATA: it_message TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
WITH HEADER LINE.
DATA:REC(80) TYPE C.
DATA g_mask(20) TYPE c VALUE ',., ..'.
DATA: it_attach TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
WITH HEADER LINE.
DATA:P_ERROR(3).
DATA:P_REFO(3).
DATA: gd_error TYPE sy-subrc,
gd_reciever TYPE sy-subrc.
DATA: t_packing_list LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
t_contents LIKE solisti1 OCCURS 0 WITH HEADER LINE,
t_receivers LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
t_attachment LIKE solisti1 OCCURS 0 WITH HEADER LINE,
t_object_header LIKE solisti1 OCCURS 0 WITH HEADER LINE,
w_cnt TYPE i,
w_sent_all(1) TYPE c,
w_doc_data LIKE sodocchgi1.
selection-screen begin of block b1 with frame title text-001.
parameters:p_file type localfile.
parameter:p_email type ad_smtpadr.
selection-screen end of block b1.
--At Selection-Screen- -
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
CALL FUNCTION 'TB_LIMIT_WS_FILENAME_GET'
EXPORTING
def_filename = p_file
mask = g_mask
mode = 'S'
title = 'INPUT FILE'
IMPORTING
filename = p_file
EXCEPTIONS
selection_cancel = 1
selection_error = 2
OTHERS = 3.
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.
PERFORM process_file.
if p_error = 'X' AND P_REFO <> 'X'.
PERFORM populate_message_body.
ENDIF.
IF P_REFO = 'X' AND P_ERROR <> 'X'.
it_message = 'Please find Attached file'.
APPEND it_message.
PERFORM send_attachment tables it_message
it_attach
using p_email
'Crest to Plc Data'
'TXT'
p_file
changing gd_error
gd_reciever.
ENDIF.
Instructs mail send program for SAPCONNECT to send email(rsconn01)
PERFORM initiate_mail_execute_program.
END-OF-SELECTION.
*& Form process_file
text
FORM process_file.
*CONSTANTS: con_cret TYPE x VALUE '0D', "OK for non Unicode
con_tab TYPE x VALUE '09'. "OK for non Unicode
DATA :l_path TYPE string.
l_path = p_file.
CONSTANTS: con_tab type c value cl_abap_char_utilities=>HORIZONTAL_TAB
con_cret type c value cl_abap_char_utilities=>newline.
OPEN DATASET P_FILE FOR INPUT IN TEXT MODE encoding default.
if sy-subrc = 0.
do.
read dataset p_file into IT_ATTACH.
IF SY-SUBRC NE 0 .
EXIT.
ELSE.
T_UPLOAD = IT_ATTACH.
CONCATENATE con_cret it_attach INTO it_attach .
append it_attach.
clear it_attach.
P_REFO = 'X'.
APPEND T_UPLOAD .
clear t_upload.
ENDIF.
ENDDO.
else.
p_error = 'X'.
ENDIF.
ENDFORM. "process_file
*& Form populate_message_body
text
FORM populate_message_body.
w_doc_data-obj_name = 'TEST'.
w_doc_data-obj_descr = 'Crest to Plc Data'.
w_doc_data-obj_langu = sy-langu.
it_message = 'File Not Found'.
APPEND it_message.
t_receivers-receiver = p_email.
t_receivers-rec_type = 'U'.
append t_receivers.
call function 'SO_NEW_DOCUMENT_SEND_API1'
exporting
document_data = w_doc_data
document_type = 'RAW'
put_in_outbox = 'X'
tables
object_header = it_message
object_content = it_message
receivers = t_receivers
exceptions
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
others = 8.
if sy-subrc = 0.
commit work.
SUBMIT rsconn01 USING SELECTION-SET 'SAP&CONNECTINT' AND RETURN.
else.
MESSAGE s027(vv) WITH 'E-mail not sent'.
endif.
ENDFORM. "populate_message_body
*& Form send_attachment
text
FORM send_attachment tables pit_message
pit_attach
using p_email
p_mtitle
p_format
p_filename
p_attdescription
p_sender_address
p_sender_addres_type
changing p_error
p_reciever.
DATA: ld_error TYPE sy-subrc,
ld_reciever TYPE sy-subrc,
ld_mtitle LIKE sodocchgi1-obj_descr,
ld_email LIKE somlreci1-receiver,
ld_format TYPE so_obj_tp ,
ld_attdescription TYPE so_obj_nam ,
ld_attfilename TYPE so_obj_des ,
ld_sender_address LIKE soextreci1-receiver,
ld_sender_address_type LIKE soextreci1-adr_typ,
ld_receiver LIKE sy-subrc.
ld_email = p_email.
ld_mtitle = p_mtitle.
ld_format = p_format.
ld_attdescription = p_attdescription.
ld_attfilename = p_filename.
ld_sender_address = p_sender_address.
ld_sender_address_type = p_sender_addres_type.
w_doc_data-doc_size = 1.
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle .
w_doc_data-sensitivty = 'F'.
Fill the document data and get size of attachment
CLEAR w_doc_data.
READ TABLE it_attach INDEX w_cnt.
w_doc_data-doc_size =
( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle.
w_doc_data-sensitivty = 'F'.
CLEAR t_attachment.
REFRESH t_attachment.
t_attachment[] = pit_attach[].
clear t_attachment.
Describe the body of the message
CLEAR t_packing_list.
REFRESH t_packing_list.
t_packing_list-transf_bin = space.
t_packing_list-head_start = 1.
t_packing_list-head_num = 0.
t_packing_list-body_start = 1.
DESCRIBE TABLE it_message LINES t_packing_list-body_num.
t_packing_list-doc_type = 'RAW'.
APPEND t_packing_list.
Create attachment notification
t_packing_list-transf_bin = 'X'.
t_packing_list-head_start = 1.
t_packing_list-head_num = 1.
t_packing_list-body_start = 1.
DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
t_packing_list-doc_type = ld_format.
t_packing_list-obj_descr = ld_attdescription.
t_packing_list-obj_name = ld_attfilename.
t_packing_list-doc_size = t_packing_list-body_num * 255.
APPEND t_packing_list.
Add the recipients email address
CLEAR t_receivers.
REFRESH t_receivers.
t_receivers-receiver = ld_email.
t_receivers-rec_type = 'U'.
t_receivers-com_type = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
APPEND t_receivers.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = ld_sender_address
sender_address_type = ld_sender_address_type
commit_work = 'X'
IMPORTING
sent_to_all = w_sent_all
TABLES
packing_list = t_packing_list
contents_bin = t_attachment
contents_txt = it_message
receivers = t_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
if sy-subrc = 0.
commit work.
SUBMIT rsconn01 USING SELECTION-SET 'SAP&CONNECTINT' AND RETURN.
else.
MESSAGE s027(vv) WITH 'E-mail not sent'.
endif.
Populate error return code
ld_error = sy-subrc.
Populate zreceiver return code
LOOP AT t_receivers.
ld_receiver = t_receivers-retrn_code.
ENDLOOP.
ENDFORM. "send_attachmentJust copy the code below and execute . I just checked and found the exact values on attachment with no blank lines. This is more simple than the one u have written , just include ur data upload logic . For ITAB values to be attached i have written a simple logic to retrive from EKPO. Just copy this code and execute. u will understand then.
I understand that ur initial requirement was to attach the file directly and not to upload and attach. If u still want to go for the old requirement then check out the code(2nd program of the two that i have sent) that i have sent u on ur previous post.
REPORT ZEMAIL_ATTACH .
TABLES: ekko.
PARAMETERS: p_email TYPE somlreci1-receiver
DEFAULT '[email protected]'.
TYPES: BEGIN OF t_ekpo,
ebeln TYPE ekpo-ebeln,
ebelp TYPE ekpo-ebelp,
aedat TYPE ekpo-aedat,
matnr TYPE ekpo-matnr,
END OF t_ekpo.
DATA: it_ekpo TYPE STANDARD TABLE OF t_ekpo INITIAL SIZE 0,
wa_ekpo TYPE t_ekpo.
TYPES: BEGIN OF t_charekpo,
ebeln(10) TYPE c,
ebelp(5) TYPE c,
aedat(8) TYPE c,
matnr(18) TYPE c,
END OF t_charekpo.
DATA: wa_charekpo TYPE t_charekpo.
DATA: it_message TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
WITH HEADER LINE.
DATA: it_attach TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
WITH HEADER LINE.
DATA: t_packing_list LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
t_contents LIKE solisti1 OCCURS 0 WITH HEADER LINE,
t_receivers LIKE somlreci1 OCCURS 0 WITH HEADER LINE,
t_attachment LIKE solisti1 OCCURS 0 WITH HEADER LINE,
t_object_header LIKE solisti1 OCCURS 0 WITH HEADER LINE,
w_cnt TYPE i,
w_sent_all(1) TYPE c,
w_doc_data LIKE sodocchgi1,
gd_error TYPE sy-subrc,
gd_reciever TYPE sy-subrc.
*START_OF_SELECTION
START-OF-SELECTION.
Retrieve sample data from table ekpo
PERFORM data_retrieval.
Populate table with detaisl to be entered into .xls file
PERFORM build_TXT_data_table.
*END-OF-SELECTION
END-OF-SELECTION.
Populate message body text
perform populate_email_message_body.
Send file by email as .TXT speadsheet
PERFORM send_file_as_email_attachment
tables it_message
it_attach
using p_email
'Example .TXT documnet attachment'
'TXT'
'filename'
changing gd_error
gd_reciever.
Instructs mail send program for SAPCONNECT to send email(rsconn01)
PERFORM initiate_mail_execute_program.
*& Form DATA_RETRIEVAL
Retrieve data form EKPO table and populate itab it_ekko
FORM data_retrieval.
SELECT ebeln ebelp aedat matnr
UP TO 10 ROWS
FROM ekpo
INTO TABLE it_ekpo.
ENDFORM. " DATA_RETRIEVAL
*& Form BUILD_TXT_DATA_TABLE
Build data table for .txt document
FORM build_txt_data_table.
CONSTANTS: con_cret TYPE x VALUE '0D', "OK for non Unicode
con_tab TYPE x VALUE '09'. "OK for non Unicode
*If you have Unicode check active in program attributes thnen you will
*need to declare constants as follows
*class cl_abap_char_utilities definition load.
*constants:
con_tab type c value cl_abap_char_utilities=>HORIZONTAL_TAB,
con_cret type c value cl_abap_char_utilities=>CR_LF.
CONCATENATE 'EBELN' 'EBELP' 'AEDAT' 'MATNR'
INTO it_attach SEPARATED BY SPACE . "con_tab.
CONCATENATE con_cret it_attach INTO it_attach." Use this if req.
APPEND it_attach.
LOOP AT it_ekpo INTO wa_charekpo.
CONCATENATE wa_charekpo-ebeln wa_charekpo-ebelp
wa_charekpo-aedat wa_charekpo-matnr
INTO it_attach SEPARATED BY SPACE ."con_tab.
CONCATENATE con_cret it_attach INTO it_attach." Use this if req.
APPEND it_attach.
ENDLOOP.
ENDFORM. " BUILD_txt_DATA_TABLE
*& Form SEND_FILE_AS_EMAIL_ATTACHMENT
Send email
FORM send_file_as_email_attachment tables pit_message
pit_attach
using p_email
p_mtitle
p_format
p_filename
p_attdescription
p_sender_address
p_sender_addres_type
changing p_error
p_reciever.
DATA: ld_error TYPE sy-subrc,
ld_reciever TYPE sy-subrc,
ld_mtitle LIKE sodocchgi1-obj_descr,
ld_email LIKE somlreci1-receiver,
ld_format TYPE so_obj_tp ,
ld_attdescription TYPE so_obj_nam ,
ld_attfilename TYPE so_obj_des ,
ld_sender_address LIKE soextreci1-receiver,
ld_sender_address_type LIKE soextreci1-adr_typ,
ld_receiver LIKE sy-subrc.
ld_email = p_email.
ld_mtitle = p_mtitle.
ld_format = p_format.
ld_attdescription = p_attdescription.
ld_attfilename = p_filename.
ld_sender_address = p_sender_address.
ld_sender_address_type = p_sender_addres_type.
Fill the document data.
w_doc_data-doc_size = 1.
Populate the subject/generic message attributes
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle .
w_doc_data-sensitivty = 'F'.
Fill the document data and get size of attachment
CLEAR w_doc_data.
READ TABLE it_attach INDEX w_cnt.
w_doc_data-doc_size =
( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
w_doc_data-obj_langu = sy-langu.
w_doc_data-obj_name = 'SAPRPT'.
w_doc_data-obj_descr = ld_mtitle.
w_doc_data-sensitivty = 'F'.
CLEAR t_attachment.
REFRESH t_attachment.
t_attachment[] = pit_attach[].
Describe the body of the message
CLEAR t_packing_list.
REFRESH t_packing_list.
t_packing_list-transf_bin = space.
t_packing_list-head_start = 1.
t_packing_list-head_num = 0.
t_packing_list-body_start = 1.
DESCRIBE TABLE it_message LINES t_packing_list-body_num.
t_packing_list-doc_type = 'RAW'.
APPEND t_packing_list.
Create attachment notification
t_packing_list-transf_bin = 'X'.
t_packing_list-head_start = 1.
t_packing_list-head_num = 1.
t_packing_list-body_start = 1.
DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
t_packing_list-doc_type = ld_format.
t_packing_list-obj_descr = ld_attdescription.
t_packing_list-obj_name = ld_attfilename.
t_packing_list-doc_size = t_packing_list-body_num * 255.
APPEND t_packing_list.
Add the recipients email address
CLEAR t_receivers.
REFRESH t_receivers.
t_receivers-receiver = ld_email.
t_receivers-rec_type = 'U'.
t_receivers-com_type = 'INT'.
t_receivers-notif_del = 'X'.
t_receivers-notif_ndel = 'X'.
APPEND t_receivers.
CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
EXPORTING
document_data = w_doc_data
put_in_outbox = 'X'
sender_address = ld_sender_address
sender_address_type = ld_sender_address_type
commit_work = 'X'
IMPORTING
sent_to_all = w_sent_all
TABLES
packing_list = t_packing_list
contents_bin = t_attachment
contents_txt = it_message
receivers = t_receivers
EXCEPTIONS
too_many_receivers = 1
document_not_sent = 2
document_type_not_exist = 3
operation_no_authorization = 4
parameter_error = 5
x_error = 6
enqueue_error = 7
OTHERS = 8.
Populate zerror return code
ld_error = sy-subrc.
Populate zreceiver return code
LOOP AT t_receivers.
ld_receiver = t_receivers-retrn_code.
ENDLOOP.
ENDFORM.
*& Form INITIATE_MAIL_EXECUTE_PROGRAM
Instructs mail send program for SAPCONNECT to send email.
FORM initiate_mail_execute_program.
WAIT UP TO 2 SECONDS.
SUBMIT rsconn01 WITH mode = 'INT'
WITH output = 'X'
AND RETURN.
ENDFORM. " INITIATE_MAIL_EXECUTE_PROGRAM
*& Form POPULATE_EMAIL_MESSAGE_BODY
Populate message body text
form populate_email_message_body.
REFRESH it_message.
it_message = 'Please find attached a list test ekpo records'.
APPEND it_message.
endform. " POPULATE_EMAIL_MESSAGE_BODY
execute this code and i hope that will help u.
regards,
Barath. -
Problems with templates overtaking first line?
Has anyone else had a problem with templates taking over the first line of code in any page that a template is applied to?
I created a template that starts like this:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- TemplateBeginEditable name="head" -->
but when that particular template is applied to a page it writes this to the code:
<!-- InstanceBegin template="/Templates/default.dwt" codeOutsideHTMLIsLocked="false" --><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!-- InstanceBeginEditable name="head" -->
I don't particularly mind this, but in IE8, because the comment is the first line - and NOT the doctype, it forces the browser into another doctype and breaks the page.
Has anyone experienced this?
I've tried re-creating my templates, but I'm not finding the reason why it decides to place that comment in the beginning sometimes..The problem may be that the comment is on the same line as the doctype, try putting a blank line between the template comment and the doctype statement
e.g.
..... IsLocked="false" -->
<!DOCTYPE HTML .....
The comment is place in the line before the doctype to enable editing of server side code, (php, asp, .net, etc.).
PZ -
Quotation Attachment with Purchase Order
please guide me how to attached the quotation with Purchase order
regardshi
there will be 2 types of attachment is there
1 you can copy sales order from the quotation then the document referance is the remarks coloumn.
2 If you want to attach the External quotation (it ia in any format . like *.Doc *.pdf etc.,,)
you should create the UDF called the Link that UDF type should be general then structure should be link
then in the sales order if you click on that table you can able to attach the file
Gopi -
See question.
I did all those things using Word and Paint to no avail. This raises another problem My PC came with Works bundled which suddenly stopped working, although it could handle graphics. MS had no solution so I deleted it and figured I could download it from MS.
Hah. Sure I could...for $130. So now I need a free word processing program which will handle graphics.
Any ideas? -
Cannot run ms safety scanner or fix it with firefox only save button shown
when I switched from IE to Firefox none of my ms safety scanner or fix it programs will run
There is no option to run as with IE and I have tried over and over to locate them in files and run but no work
I have to keep switching back to IE to get them to work even with anti virus offAll Microsoft Fix It files are executables. For security reasons, you can't directly run programs. You can only save them and run them manually.
By default, files are saved to your Downloads folder. If you put them somewhere else, you can locate them in the Library, Downloads section. See the following article for details.
* [[Find and manage downloaded files]] -
Only display first item when item no is bound to viewBT117S_SRC/AdvancedSRL
Hi ;
I want to add order item attributes to the lines of the page "service confirmatioms" , at first It was displaying only order header lines in standart , i enhanced the context node and added "item line no" of the orders but in the view it displays first item lines for each order.ıf you have 18 orders , it displays only 18 lines and only item no 10 for each one.
new attribute i added to the context no in following orders (item line no)
-->BTADVSSrvCfm
-->BTOrderHeader
-->BTHeaderItemsExt
--> BTOrderItemAll
-->Item No
For each order I have at least 2 lines , Why does it displays only first items after I enhanced the context node by adding item line no?
What sould I follow the steps?
ThanksHi ;
I want to add order item attributes to the lines of the page "service confirmatioms" , at first It was displaying only order header lines in standart , i enhanced the context node and added "item line no" of the orders but in the view it displays first item lines for each order.ıf you have 18 orders , it displays only 18 lines and only item no 10 for each one.
new attribute i added to the context no in following orders (item line no)
-->BTADVSSrvCfm
-->BTOrderHeader
-->BTHeaderItemsExt
--> BTOrderItemAll
-->Item No
For each order I have at least 2 lines , Why does it displays only first items after I enhanced the context node by adding item line no?
What sould I follow the steps?
Thanks -
Create Quotation (ME41) with multiple lines item
Hi All,
Do you guys know how to create a quotation (ME41) with a multiple lines item with LSMW ?
I'm considering create a LSMW with a BAPI just like "CREATEFROMDATA1 (for create PO)" so it has a HeaderData and also ItemData.
I also looked on the BAPI, but couldn't find any BAPI for quotation.
Any suggestion?
Thx uHope this could help u...
BAPI for RFQ Creation (ME41) -
Hide "more" button in a list view, only works for first item in the list
I have the following code in a list view that outputs several dozen items in a web app. The code only works for the first item, how can I make it loop through and execute the test for each item in the list view? The {tag_hide more button} is a checkmark field that yields a numeric 1" if checked otherwise yields a numeric "0".
<div id="more-option">
<p class="right"><a href="{tag_itemurl_nolink}" class="btn btn-small btn-very-subtle">More →</a></p>
</div>
<div class="more-selection" style="display: none;">{tag_hide more button}</div>
<script>
if ($(".more-selection").text() == "1") {
$("#more-option").hide();
</script>What's the URL for the site where you are using this? Offhand, it looks like it should work with your first example so you are either placing the script before those elements are loaded or you might try wrapping your current javascript inside the:
$(document).ready(function() {
--- your existing javascript here
This make sure the code runs once all the html is loaded on the page. Without seeing a URL and debugging with the js console in Chrome I can't give you a solid answer.
But, I do know that you can probably do this with a lot less markup. Once we figure out what the actual problem is I have a better solution mocked up for you on jsfiddle.
When looking at my HTML code on jsfiddle, please realize I setup some dummy HTML and removed your tags and added actual values which would be output by your tags. The main thing I did was remove the whole div.more-selection and instead, added a "data-is-selected" attribute on your div.more-option element. Then, in my javascript for each div.my-option element on the page, we loop through them, find the value of that data attribute and hide that div if it's less than 1 (or 0).
Here's the fiddle for you to look at: http://jsfiddle.net/thetrickster/Mfmdu/
You'll see in the end result that only two divs show up, both of those divs have data-is-selected="1".
You can try pasting the javascript code near the closing </body> tag on your page and make sure to wrap my js inside a <script> tag, obviously. My way is neater on the markup side. If you can't get it to work it's likely a jquery conflict issue. My version is using the $(document).ready() method to make sure all the code is loaded before it runs.
Best,
Chris -
Items in template contain errors, only correct items are transferred
Hi guys,
When we create SC with items from the old SC the message appears: "Items in template contain errors, only correct items are transferred". I checked SC, there are no error messages. I found that field SOURCE_REL_IND in the table BBP_PDIGP is initial. Can it be the reason of this error message?Hello
I think the old items from the old SC will be validated, and therefore you got this error message.
I would suggest to uncheck the 'Validate Product Data' (In Additional
Functions in product catalog tab) for the external catalog in the
following path:
spro -> SAP IMG -> Enterprise Buyer -> Master Data ->
Define Catalogs. Select the catalog, and then 'Goto -> Details'
Hope this helps,
Daniel -
Quotations PCUI - Send Attachements with the Quotation-Smarforms
Hi Experts,
I've got a question concerning smartforms and attachments in the PCUI - Environment.
We've created a smartform in the quotation application and we starting sending this smarftorm with actions, that means if the Quotation is ready to send, we can choose sending via fax, e-mail or print it out with the actions. This works fine, but now we have the requirement to send all documents (normaly pdf - documents) of the quotation directly with the quotation-smartform (product-datasheet for example). Is this possible, do you have any experience in this topic?
We use CRM 5.0 - and Sapnetweaver 2004s portal...
regards
marcHello,
You can read the attachment of the Quatotation using the CRM document library functions and extract the content of the documents. After this this can be put as part of the smart form.
Starting point will to explore CRM document library CLDocument should give you some hints.
Raj -
Module pool- only first line item data saved, rest disappears??
Hi Experts,
I have one module pool that was developed by other developer. It has header details input fields and items details input by table control.
Now below scenarios occur:
1) When I enter only one line item, and save it, the data is saved properly
2) when I enter more than one item data and save it, it only saves first line item data.
3).When I press ENTER button after every new line item data, it saves all the data properly.
I tried to debug the report but could not find the exact problem statement as the code is written very badly without any comments.
I am pasting the flow logic code below for the screen.
So please help me figure out the problem and solution for it.
+++++++++++++++++++++++++++++++++++
PROCESS BEFORE OUTPUT.
*&SPWIZARD: PBO FLOW LOGIC FOR TABLECONTROL 'IT_MSEG'
MODULE it_mseg_change_tc_attr.
*&SPWIZARD: MODULE IT_MSEG_CHANGE_COL_ATTR.
LOOP AT it_gp
INTO wa_gp
WITH CONTROL it_mseg
CURSOR it_mseg-current_line.
MODULE it_mseg_get_lines.
*&SPWIZARD: MODULE IT_MSEG_CHANGE_FIELD_ATTR
ENDLOOP.
* MODULE STATUS_9001.
MODULE deactive_screen.
PROCESS AFTER INPUT.
*&SPWIZARD: PAI FLOW LOGIC FOR TABLECONTROL 'IT_MSEG'
LOOP AT it_gp.
CHAIN.
FIELD wa_gp-yposnr.
FIELD wa_gp-matnr.
FIELD wa_gp-maktx.
FIELD wa_gp-meins MODULE check_uom ON INPUT..
* FIELD WA_GP-DOC_QTY.
* FIELD WA_GP-REC_QTY.
FIELD wa_gp-gp_qty.
FIELD wa_gp-chall_qty.
FIELD wa_gp-netwr.
FIELD wa_gp-remarks.
FIELD wa_gp-exp_ret.
MODULE it_mseg_modify ON CHAIN-REQUEST.
ENDCHAIN.
FIELD wa_gp-chk
MODULE it_mseg_mark ON REQUEST.
ENDLOOP.
MODULE it_mseg_user_command.
*&SPWIZARD: MODULE IT_MSEG_CHANGE_TC_ATTR.
*&SPWIZARD: MODULE IT_MSEG_CHANGE_COL_ATTR.
MODULE user_command_9001.
+++++++++++++++++++++++++++++++++++
Thanks,
Vishal.Hi Aruna,
Below is the code as you required.
+++++++++++++++++++++++++++++
MODULE user_command_9001 INPUT.
ygp_header_mas-ret_type = v_gpt.
CASE sy-ucomm.
WHEN 'MBLNR'.
PERFORM select_mblnr.
WHEN 'DEL'.
PERFORM select_delivery.
WHEN 'INTI'.
PERFORM grt_gi_details.
WHEN 'GENT'.
PERFORM get_ge_details.
WHEN 'GP'.
PERFORM get_returnable_gp.
WHEN 'SAVE'.
PERFORM gen_gp_number.
PERFORM gen_data.
PERFORM save_data.
WHEN OTHERS.
PERFORM get_ge_details_other.
IF it_gp[] IS INITIAL.
INSERT INITIAL LINE INTO it_gp INDEX 1.
ENDIF.
ENDCASE.
IF v_entry = 07 .
PERFORM serial_no1.
PERFORM insert_row.
ENDIF.
IF sy-ucomm IS INITIAL.
PERFORM calc_amt.
ENDIF.
CLEAR:sy-ucomm.
ENDMODULE. "user_command_9001 INPUT
+++++++++++++++++++++++++++++++
MODULE it_mseg_user_command INPUT.
ok_code = sy-ucomm.
PERFORM user_ok_tc USING 'IT_MSEG'
'IT_GP'
'CHK'
CHANGING ok_code.
sy-ucomm = ok_code.
ENDMODULE. "IT_MSEG_USER_COMMAND INPUT
++++++++++++++++++++++++++++++++++
MODULE it_mseg_modify INPUT.
MODIFY it_gp
FROM wa_gp
INDEX it_mseg-current_line.
ENDMODULE. "IT_MSEG_MODIFY INPUT
====> Above module has some problem i think as while debugging it was not updating IT_GP as the current line number was not matching with IT_GP as it has only one line item and WA_GP was changing. Also WA_GP data was getting changed with LOOP with all line items data.
++++++++++++++++++++++++++++++++++++++++++++++
MODULE it_mseg_mark INPUT.
DATA: g_it_mseg_wa2 LIKE LINE OF it_gp.
IF it_mseg-line_sel_mode = 1
AND wa_gp-chk = 'X'.
LOOP AT it_gp INTO g_it_mseg_wa2
WHERE chk = 'X'.
g_it_mseg_wa2-chk = ''.
MODIFY it_gp
FROM g_it_mseg_wa2
TRANSPORTING chk.
ENDLOOP.
ENDIF.
MODIFY it_gp
FROM wa_gp
INDEX it_mseg-current_line
TRANSPORTING chk.
ENDMODULE. "IT_MSEG_MARK INPUT
+++++++++++++++++++++++++++++++++++++++++
If I press ENTER after entering each line item, all records come in IT_GP but if not then only first line item comes. Also if I dont press ENTER after entering the first line item and and add one item (total 2) and then press ENTER then sometimes both the lines disappear.
Thanks,
Vishal -
Selecting from Combobox with only one item
I'm populating Comboboxes based on selections from other
comboboxes. I pick up the selection with the 'change' trigger,
however when you select the top item or if there is only one item,
the change route doesn't work. So I tried to use the 'click' and
even the 'close' triggers instead, but they give me an errors when
I try to access the companion ArrayCollections which hold the IDs
for the items in the list (as commented in the code). Any ideas how
to get this to update with just one selection?
<!-- The first three comboboxes populate the next one in
the list in a 'drilldown' approach -->
<mx:ComboBox minWidth="130" maxWidth="130" id="selectSys"
dataProvider="{sysOps.lastResult.system.data}"
change="fillComboBox(selectSys, selectSub, 'subsystem',
subOps, sysIDs, 1)" rowCount="10" />
<mx:ComboBox minWidth="130" maxWidth="130" id="selectSub"
dataProvider="{subOps.lastResult.system.data}"
change="fillComboBox(selectSub, selectDev, 'devices',
devOps, subIDs, 2)"/>
<mx:HTTPService id="sysOps" useProxy="false" method="GET"
result="sysIDs = sysOps.lastResult.system.id as
ArrayCollection;"
fault="mx.core.Application.application.handleFault(event);"
url="
http://localhost:8080/TomCustodes/rocket"/>
<mx:HTTPService id="subOps" useProxy="false" method="GET"
result="subIDs = subOps.lastResult.system.id as
ArrayCollection;"
fault="mx.core.Application.application.handleFault(event);"
url="
http://localhost:8080/TomCustodes/rocket"/>
// fill destination combobox based on selection from src
combobox
public function fillComboBox(src:ComboBox, dest:ComboBox,
type:String,
serv:HTTPService, idArray:ArrayCollection, element:int) :
void {
// choose ID from the associated ID array with the same
selecetedIndex
// error occurs as the idArray ArrayCollection comes up as
null
var selectedID:String = idArray.getItemAt(src.selectedIndex)
as String;
var params:Object = {};
params[type] = type;
var arg:String = "arg";
var argList:Array = new Array();
if (element > 1) {
var ind:int = selectSys.selectedIndex;
var sysName:String = sysIDs.getItemAt(ind) as String;
argList.push(sysName);
if (element > 2) {
ind = selectSub.selectedIndex;
var subName:String = subIDs.getItemAt(ind) as String;
argList.push(subName);
argList.push(selectedID);
params[arg] = argList;
serv.send(params);
Thanks!I think the way I would go about that is having a result
function for the HTTPServices and set your array collections how
you are. Then after they are set I would check to see if the length
== 1 and if it does then recall your fillComboBox method for the
next combo box since there isn't a way for the user to change the
combo box they might as well have the next one already filled out.
The other approach you could take is after you set your array
collection to your result add dummy items via
myAC.addItemAt({label:"Choose one"}, 0); This will ensure the user
always has an item to change to. -
The message: "Items in template contain errors, only correct items..
Hi guys,
When we create SC with items from the old SC the message appears: "Items in template contain errors, only correct items are transferred". I checked SC, there are no error messages. I found that field SOURCE_REL_IND in the table BBP_PDIGP is initial. Can it be the reason of this error message?Hello,
Please make sure that catalog item/customization is properly maintained including OCI field
NEW_ITEM-EXT_PRODUCT_ID. Make sure that these items exist.
Could you kindly UN-CHECK the 'Validate Product Data' (In Additional
Functions in product catalog tab) for the external catalog in the
following path
[Transaction spro -> SAP IMG -> Enterprise Buyer -> Master Data ->
Define Catalogs. Select the catalog, and then 'Goto -> Details'] and
check whether the error message is coming up ?
Kind regards,
Gaurav -
Please explain me, how to remove an usb stick or memory chip? With experiences only in pc:s, I do not find on my first apple e.g. MacBook Air a solution. Until now I have succeeded to destroy one chip full of photos and - there's no life more in the port...
Someone told me just to remove the chip in clicking it to the trash can and voilá - it would be done. But as I did so, on the screen appeared a text which let me know, that that way had been the wrong one...
I should have clicked Finder plus something.... which I do not now remember but which was then not found behind the Finder.
So please would someone be so kind and tell me, where I can find explanations for the most simple functions. The manual I got does not include a clue.
Thank you!First make sure that no application is using or has open any files on the disk. Then:
Click and drag the disk icon on the desktop to the trash. Wait for the system to recognize the action, and the icon should disappear from the desktop. It is then safe to remove the device.
Alternatively, you can secondary click on the disk icon, and then primary click "Eject (name of disk)". Wait for the icon to disappear off the desktop, and then it is safe to remove the drive.
Here is a detailed help document on the subject.
http://docs.info.apple.com/article.html?path=Mac/10.7/en/mchlp1056.html
Maybe you are looking for
-
How to Change Default Iview Properties for Role Upload?
Hello, We have many roles to upload from R/3 ABAp system to NW2004s EP. We use the Role Upload tool in the Portal to achieve this. It works fine, the roles are created in the portal and can be assigned to users. The fall back is that we have to modif
-
My daughter has just bought me an iPad 2 from Dubai and set it all up for me but unfortunately the iMessage function doesn't seem to work. We keep getting messages,when trying to activate it, that there is a network connection problem - help!
-
Pocket slow down after exit application
Hi, I have an application that runs normally in a Pocket PC, Windows Mobile 2003, 64 MB RAM. But when i exit application, the Pocket almost freezes ! Sometimes I need to inicialize Pocket again. I exit my application this way: ConnectDB.d
-
Macbook air turned off without warning?
Hi! Last night my macbook air turned off without warning and wouldn't turn back on until I tried again this morning. A few weeks ago I had my battery and logic board replaced and since then it the screen has gone blue for a few seconds and then back
-
Mixing XML syntax w/JSP syntax
As I understand it, you can use either the JSP-specific syntax or an XML-based syntax for code in a JSP page. For instance you can use either <%= expresssion %>(JSP-specific syntax) or <jsp:expression> expression </jsp:expression>(XML-based