How to print the standard SMARTFORM by using NACE.
Kindly provide the full steps.
thanks in advance.
Hi,
<b>1.</b> In transaction NACE select application and then select click on the output button on the application toolbar.
<b>
2.</b> Select you output type which you will be using and click procesing routine.
<b>3.</b> Enter your smartform name in smartform textbox.
<b>4</b>. Enter thr program name in the program text box. This is the program through which you are calling your samrtform funtion module.
<b>5.</b> finally in the form routine enter the routine from where the processing will start in program mentioned above.
Hope this helps you.
Enjoy SAP.
Pankaj Singh.
Similar Messages
-
How to find the standard smartform,sap scripts and theur driver programs
Hi friends,
can any one tell me how to find the standard smartforms and their driver programs and same for scripts also.
bye
sasiHi sasidhar,
1. Either standard or Y sapscript layouts,
we can check their standard programs
in this manner also.
2. goto se71
open the layout in DISPLAY mode.
3. FORM------> CHECK -
> TEXTS
4. a small window will come.
click ok (tick button)
5. Again a new window will come
which will list out all the DRIVER programs,
which use this layout.
regards,
amit m. -
How to print the Module pool screen using a push button in the screen
Hi Every one,
i have developed a module program , which have a selection screen and it display the output in a structured way.
output includes boxes, texts etc...
my problem is :---
How to print the Module pool screen using a push button in the screen.When the "Print" button is pressed:
leave to list-processing and return to screen 100. "(current screen)
Call a transaction that runs your print program.
Rob -
How to print the texts retrived by using READ_TEXT fun module in Smartform
Please tell me how to print the text which is rertrived by using the READ_TEXT function module in smartform.
I have coded all things in the program lines and in that i am retriveing the long texts.
I am getting the text lines in my internal table clearly, the thing is that I am not able to pass these lines to the text.
I have to print the trouble ticket. in that the notes log I have to pass.
its urgent. Points will be rewarded for any type of clue. whether it will work or not.There are a few ways to do it. If you need to take all of the text in the text type, in your SF text element choose "Include Text".
Populate the fields with the data that corresponds to the text type. It is similar to the interface to the FM "Read_Text.
Text Name
Text Obje
Text ID
Language
Encase any variables with the "&" symbol.
If you have already coded the call to the FM "READ_TEXT" and loaded the text into an internal table, create a loop and loop through the itab. Inside of the loop create a text element and add a variable in the text element for the field you are looking to output. -
How to replace the standard smartform layout coding to its original content
Hi All,
I have edited a standard layout and coding in a standard smartform.
And i had been made some changes in it but now i need to give the older one(which should be same when i got it - no changes should be made).
How and where can i do changes to submit the older program???Hello Rajesh,
specifiy the path in PCD location in SPRO (IMG)>> homepage framework where there payslip is store.
let me know if you still face problem.
rewards point if helpful.
thanksyou,
Regards
Vijai -
How to print the invoice(Billing document) using program RSNAST00
Hi,
I want to print the invoice using the program RSNAST00,
but when i fill in selection screen with the following details,
Output Application : V3
Object Key : Billing Document Number
Output Type : ZPFM
Transmission Medium : 1
But it is throwing an Information Message "0 outputs were processed in total (0 successfully,0 incorrectly)
So please guide me, what are settings i have to do and what abap code i have to write to overcome this error.
Regards,
Shasiraj.CHi,
As you told I am using the function module RV_MESSAGE_DIALOG in my program when I directly execute my program its not printing invoice,but when i keep the break point and execute a pop up comes in which i click on the PRINT button that time it is printing the invoice.
But I dont want to click on Print button manually, my code should automatically take care of printing also.
Can guide me in this issue.
Regards,
Shasiraj.C -
How to print the superscript in smartform
Hi gurus,
Please tell me the procedure how to print the superscript in middle of the text displaying?
when we are displaying the smartform its converted to some special character like & .
please let me know procedure at the earliest
Regards
RajHi thanks for ur patience.
see my requirment was to print TM as superscript for HLL ,already smartstyle is there, and also a character format with superscript is also defined.
then aftet HLL how it prints as superscript.
for HLL we are using another character format and for superscript we are using the another character format.
If posiible send me the code to write in smartforms
Regards
RAj
Points are awarded for useful answers. -
How to print a standard text of 3 pages in the script output?
Hi all,
I want to print a standard text as an include in the script output.
But the standrad text is of 3 pages conataining continuous (some terms and condtitions) text.
But while executing driver program, I am getting a STOP messgae pop-up saying 'Output is continuous or contains too many pages (>4)'.
How to get the standard text of 3 pages in the output. The standard text is to be printed at the bottom of the output.
Thanks,
SachinHi ,
To display standard texts you have to create a include in your script below is the syntax for that:
INCLUDE name OBJECT name ID name PARAGRAPH name LANGUAGE name
Include command is used to include standard text in a form.the text
should be already defined by using transaction SO10.
Here name is the name of text
ID is used to classify text e.g. SDVD (SD related text) , ST (Standard text)
OBJECT is used to specify type of object it an be TEXT , DOKU
LANGUAGE is used to specify language like EN ,if ommited than logon
language is used
PARAGRAPH is used to specify the paragraph like C
e.g. /:INCLUDE mytext OBJECT TEXT ID ST LANGUAGE EN
Here the standard text created in SO10 with name mytext is
included in the form in language EN (English)
Please let me know if you have still any confusion.
Thanks
Narendra Vikram Vishwakarma -
RE: How to print the special characters in Smartforms
Hi,
Can you please let me know how to print "číslo" in Smartform output as it is getting printed as "císlo". I mean to say that special character "č" is getting printed as "c".
Even I checkd the same in Slovakian language and same thing is happening.
Kindly suggest.....Hi,
Which device type do you use to create the spool and print. What is the result with device type I2SWIn or SWINCF?
Regards,
Aidan -
How to include the STANDARD TEXT Logo in SMARTFORM???
Hai experts,
Im able to get the standard text logo in SAPSCRIPT used follwing command in text editor.
v_logo is dynamic variable.
/:INCLUDE &V_LOGO& OBJECT TEXT ID ST LANGUAGE EN
But in smartforms im unable to get the Standard text logo used following steps...
in Include text node
A) Text name : &V_LOGO& <
B) Text object : TEXT >
C) Text ID : ST >
D) Text Language : EN >
Why????
What are the further steps needed??
Rewards helpful answer is very useful..
Thanks & rgds,
Muru.P.HI
http://www.sapmaterial.com/smartform_example.html
http://www.sap-press.com/product.cfm?account=&product=H955&shoppingcart=003
Tcode SE78 is used to import graphics into the SAP system. The transaction imports the graphics and stores it
in the BDS (business transaction server) and then it can be displayed in the form.
· To create the graphic node , call the context menu for that node in the tree structure and choose create-
>graphic
· Enter a name (LOGO) for the node and the description (Logo Graphic)
· On the general attributes determine whether a colored or a black and white
· On General Attributes use the fields object - GRPAHIC, id u2013 BMAP and name - &G_LOGO& to identify the
graphic. &G_LOGO& is variable and therefore we can print company code specific logo. Program line preceding
the graphic is required.
Regards
Pavan -
Hi,
Currently, we are using crystal report to all of our reporting applications, but since I/users have encountered some issues about CR's speed to load only a simple report, maybe it is now time for us to adopt a new reporting environment in which I think SSRS
can fill this problem.
To start with, I have here a sample code, that uses the crystal report to print the report directly without previewing:
csCashInvoiceCal csCashCal; --Crystal report name .rpt
dsCsReceipt dsCs; --created dataset
DataTable u;
DataRow s;
private System.Drawing.Printing.PrintDocument printDocument1;
private System.Windows.Forms.PrintDialog printDialog1;
ParameterValues paramValue;
ParameterDiscreteValue discreteValue;
ParameterFieldDefinition fieldDefinition;
private void btnPrint_Click(object sender, EventArgs e)
this.Cursor = Cursors.WaitCursor;
loadReceipt2();
print2();
csCashCal.Close();
this.Cursor = Cursors.Default;
private void loadReceipt2()
dsCs = new dsCsReceipt(); --created dataset
u = dsCs.Tables.Add("DtCsReceipt");
u.Columns.Add("Qty", Type.GetType("System.String"));
u.Columns.Add("UOM", Type.GetType("System.String"));
u.Columns.Add("Description", Type.GetType("System.String"));
u.Columns.Add("UnitPrice", Type.GetType("System.String"));
u.Columns.Add("Discount", Type.GetType("System.String"));
u.Columns.Add("Amount", Type.GetType("System.String"));
try
for (int i = 0; i < dgvDesc.Rows.Count - 1; i++)
s = u.NewRow(); double.TryParse(dgvDesc.Rows[i].Cells[Discount2.Name].Value.ToString(), out discount);
s["Qty"] = double.Parse(dgvDesc.Rows[i].Cells[Qty.Name].Value.ToString());
s["UOM"] = dgvDesc.Rows[i].Cells[Uom2.Name].Value.ToString();
s["Description"] = invcode + dgvDesc.Rows[i].Cells[Description.Name].Value.ToString();
s["UnitPrice"] = dgvDesc.Rows[i].Cells[UnitPrice.Name].Value.ToString();
if (discount != 0)
s["Discount"] = "(" + string.Format("{0:0.##}", discount) + "%)";
else
s["Discount"] = "";
s["Amount"] = dgvDesc.Rows[i].Cells[Amount2.Name].Value.ToString();
u.Rows.Add(s);
catch (Exception) { }
csCashCal = new csCashInvoiceCal();
csCashCal.SetDataSource(dsCs.Tables[1]);
//csCashCal.Refresh();
loadParameter2();
private void loadParameter2()
ParameterFieldDefinitions paramFieldDefinitions;
paramValue = new ParameterValues();
discreteValue = new ParameterDiscreteValue();
paramFieldDefinitions = csCashCal.DataDefinition.ParameterFields;
discreteValue.Value = date;
fieldDefinition = paramFieldDefinitions["Date"];
commonParam();
discreteValue.Value = txtcsno.Text;
fieldDefinition = paramFieldDefinitions["InvoiceNo"];
commonParam();
discreteValue.Value = txtNameTo.Text;
fieldDefinition = paramFieldDefinitions["CustomerName"];
commonParam();
discreteValue.Value = txtAdd.Text;
fieldDefinition = paramFieldDefinitions["CustomerAddress"];
commonParam();
------other parameters----
private void commonParam()
paramValue.Clear();
paramValue.Add(discreteValue);
fieldDefinition.ApplyCurrentValues(paramValue);
private void print2()
using (printDocument1 = new System.Drawing.Printing.PrintDocument())
using (this.printDialog1 = new PrintDialog())
//this.printDialog1.UseEXDialog = true;
this.printDialog1.Document = this.printDocument1;
DialogResult dr = this.printDialog1.ShowDialog();
if (dr == DialogResult.OK)
int nCopy = this.printDocument1.PrinterSettings.Copies;
int sPage = this.printDocument1.PrinterSettings.FromPage;
int ePage = this.printDocument1.PrinterSettings.ToPage;
string PrinterName = this.printDocument1.PrinterSettings.PrinterName;
try
csCashCal.PrintOptions.PrinterName = PrinterName;
csCashCal.PrintToPrinter(nCopy, false, sPage, ePage);
printcount++;
//saveCountPrint();
catch (Exception err)
MessageBox.Show(err.ToString());
This is only a simple sales receipt application that uses dgv and textboxes to push its data to dataset to the crystal report, a simple one but there are instances that it is very slow.
But I'm having trouble implementing this using SSRS, since I'm only new to this one, wherein I created the report using report wizard, with two button options inside the form for print preview or direct print selection. Actually, it is very easy to implement
with print preview because it uses reportviewer. My problem is that how can I print the report directly without using a reportviewer?
So here is my code so far which I don't know what's next:
private void button2_Click(object sender, EventArgs e)
this.Cursor = Cursors.WaitCursor;
loadReceipt3();
//print3();
this.Cursor = Cursors.Default;
ReportParameter[] parameter = new ReportParameter[11];
private void loadParameter3()
parameter[0] = new ReportParameter("InvoiceNo", txtcsno.Text);
parameter[1] = new ReportParameter("Date", date);
parameter[2] = new ReportParameter("CustomerTin", txtTin.Text);
parameter[3] = new ReportParameter("CustomerName", txtNameTo.Text);
parameter[4] = new ReportParameter("CustomerAddress", txtAdd.Text);
parameter[5] = new ReportParameter("Agent", agent);
parameter[6] = new ReportParameter("Discount", "Discount: ");
parameter[7] = new ReportParameter("TotalDiscount", lblDiscount.Text + "%");
parameter[8] = new ReportParameter("TotalSales", rdtotal);
parameter[9] = new ReportParameter("Tax", rdtax);
parameter[10] = new ReportParameter("TotalAmount", rdnet);
private void loadReceipt3()
DataSet dsrs = new DataSet();
DataTable dtrs = new DataTable();
DataRow drs;
dtrs.Columns.Add("Qty", Type.GetType("System.String"));
dtrs.Columns.Add("UOM", Type.GetType("System.String"));
dtrs.Columns.Add("Description", Type.GetType("System.String"));
dtrs.Columns.Add("UnitPrice", Type.GetType("System.String"));
dtrs.Columns.Add("Discount", Type.GetType("System.String"));
dtrs.Columns.Add("Amount", Type.GetType("System.String"));
try
for (int i = 0; i < dgvDesc.Rows.Count - 1; i++)
drs = dtrs.NewRow();
drs["Qty"] = double.Parse(dgvDesc.Rows[i].Cells[Qty.Name].Value.ToString());
drs["UOM"] = dgvDesc.Rows[i].Cells[Uom2.Name].Value.ToString();
drs["Description"] = invcode + dgvDesc.Rows[i].Cells[Description.Name].Value.ToString();
drs["UnitPrice"] = dgvDesc.Rows[i].Cells[UnitPrice.Name].Value.ToString();
if (discount != 0)
drs["Discount"] = "(" + string.Format("{0:0.##}", discount) + "%)";
else
drs["Discount"] = "";
drs["Amount"] = dgvDesc.Rows[i].Cells[Amount2.Name].Value.ToString();
dtrs.Rows.Add(s);
catch (Exception) { }
int addtlRow = 7;
if (addtlRow > (count - 1))
addtlRow = addtlRow - (count - 1);
for (int i = 0; i < addtlRow; i++)
dtrs.Rows.Add();
loadParameter3();
LocalReport localreport = new LocalReport();
localreport.SetParameters(parameter);
localreport.DataSources.Clear();
localreport.DataSources.Add(new ReportDataSource("dsSalesReceiptSsrs", dtrs));
localreport.Refresh();
//what's next....
So what's next after local..refresh()? Actually, I have googled a lot but I didn't found the exact solution that I'm looking for which confuses me a lot.
Anyway I'm using VS 2010 with sql server 2012 express.
You're help will be greatly appreciated.
Thank you,
HardzAfter some further studies with ReportViewer controls and with the use of this tutorial @ : http://msdn.microsoft.com/en-us/library/ms252091.aspx, which helps me a lot on how to print a report without using a report viewer, I found out what is missing
with my code above and helps solve my question.
Here's the continuation of the code above:
private void loadReceipt3()
loadParameter3();
LocalReport localreport = new LocalReport();
localreport.ReportPath = @"..\..\SsrsCashReceipt.rdlc";
localreport.SetParameters(parameter);
localreport.DataSources.Clear();
localreport.DataSources.Add(new ReportDataSource("dsSalesReceiptSsrs", dtrs));
Export(localreport);
print4();
private IList<Stream> m_streams;
private int m_currentPageIndex;
private void Export(LocalReport report)
string deviceInfo =
@"<DeviceInfo>
<OutputFormat>EMF</OutputFormat>
<PageWidth>8.5in</PageWidth>
<PageHeight>11in</PageHeight>
<MarginTop>0.25in</MarginTop>
<MarginLeft>0.25in</MarginLeft>
<MarginRight>0.25in</MarginRight>
<MarginBottom>0.25in</MarginBottom>
</DeviceInfo>";
Warning[] warnings;
m_streams = new List<Stream>();
report.Render("Image", deviceInfo, CreateStream,
out warnings);
foreach (Stream stream in m_streams)
stream.Position = 0;
private void print4()
if (m_streams == null || m_streams.Count == 0)
throw new Exception("Error: no stream to print.");
PrintDocument printDoc = new PrintDocument();
PrintDialog printDlg = new PrintDialog();
printDlg.Document = printDoc;
DialogResult dr = printDlg.ShowDialog();
if (dr == DialogResult.OK)
if (!printDoc.PrinterSettings.IsValid)
throw new Exception("Error: cannot find the default printer.");
else
printDoc.PrintPage += new PrintPageEventHandler(PrintPage);
m_currentPageIndex = 0;
printDoc.Print();
Dispose();
public void Dispose()
if (m_streams != null)
foreach (Stream stream in m_streams)
stream.Close();
m_streams = null;
private Stream CreateStream(string name, string fileNameExtension, Encoding encoding, string mimeType, bool willSeek)
Stream stream = new FileStream(name + "." + fileNameExtension,
FileMode.Create);
m_streams.Add(stream);
return stream;
private void PrintPage(object sender, PrintPageEventArgs ev)
Metafile pageImage = new
Metafile(m_streams[m_currentPageIndex]);
// Adjust rectangular area with printer margins.
Rectangle adjustedRect = new Rectangle(
ev.PageBounds.Left - (int)ev.PageSettings.HardMarginX,
ev.PageBounds.Top - (int)ev.PageSettings.HardMarginY,
ev.PageBounds.Width,
ev.PageBounds.Height);
// Draw a white background for the report
ev.Graphics.FillRectangle(Brushes.White, adjustedRect);
// Draw the report content
ev.Graphics.DrawImage(pageImage, adjustedRect);
// Prepare for the next page. Make sure we haven't hit the end.
m_currentPageIndex++;
ev.HasMorePages = (m_currentPageIndex < m_streams.Count);
Thank you very much for this wonderful tutorial. :) -
Hi Experts,
I'm using SSF_OPEN and SSF_CLOSE, to print multiple smartforms. In between SSF_OPEN and SSF_CLOSE, there is a loop at a smartform. The output prints each smartform in different pages. Is it possible to print the second smartform in the first page since there is still space for printing there?
Thanks in Advanced,
JackHi Jack,
As per my knowledge,
you can't print two smartform in single page because smart form having own page-size.
If your layout page is A4 size then first layout print in A4 page and next layout will be go-to next print page. but if you have different kind of page size for both layout then you can control from printer side then that case both page will be printed in single print page.
Regards,
Prasenjit -
How to find out the standard smartforms?
how to find out the standard smartforms?
Hi Sunil
You just go to transaction <b>SE80</b>(Object Navigator)
and in that enter <b>Package BC470</b>
which contains the standard Programs on Smart forms ,
I think there you can find some Smart forms in those programs.
I hope it will help you.
If it helps reward with points.
Regards Rk -
How to print the Actual Check on 1st Page if line items are more for F110_p
Hi,
How to print the Actual Check on 1st page if the line items are more in F110_PRENUM_CHCK script. The standard script is printing at the last page of line items.
I tried using
IF &PAGE& EQ '1 '
/E 545 --> text element
ENDIF
but it is of no use.
Please let me know if anyone knows. Thanks in Advance.Hi Krishna,
I guess, there is no other possible way to acheive this without modifying the standard driver program. Why because? in you driver program you check window will be called only on the last page... but before you change your driver program give a try like shown below....
Not sure, but give a try... In the first page you will be printing some void check try to replace the code inside the text element of void check with original check and make all the check void... note: in this text element, be sure you write two conditions...
IF &PAGE& = 1.
**PRint all check values..
ELSE.
***Print void values
ENDIF.
Close the thread if your question is answered.
Regards,
Sairam -
How to get the standard Menu of Query Designer into Web Template
Hi Experts,
is there a way on how to put the standard menu within Bex Query Designer (after executing a Query with the Query Designer you get into ad-hoc reporting with a menu including several functions like print, show as..., properties, etc) into an individual Bex Web Template?
Copy & Paste source code will not work I guess because of several javascript functions I don't have access to.
Thanks & Best regards
TobiasBEx queries are displayed on the web using standard web template 0ANALYSIS_PATTERN or some customized version base don your implementation.
You can either include the 0ANALYSIS_Pattern web template in your custom template or use Save as to create a new template with 0ANALYSIS_Pattern AS THE STARTING POINT.
Maybe you are looking for
-
I'm having trouble with DW5.5 on Mac OS 10.6.8. I'm trying to update my resume and when I type in my new info, "Is This How I Look?" I can't see it on my design page, but it shows up on the code page. Here is the code from the top of the page and fol
-
What do you use to edit templates?
I am new to HTML DB and I was wondering what you use to edit the templates to make the site look as you wish. I find the textboxes in HTML DB very annoying, especially since the page can scroll but the boxes too. And there doesn't seem to be an easy
-
Configurations required for PME and SCE in SAP-CRM 2007
Hi Friends How to configure the PME and SCE in SAP-CRM 2007. If u have any documentation avilable for those two topics regading the implementation of e-Commerce application. Waiting for ur reponse.. Regards Satish.
-
Camera icon missing from Blackberry Z3
Hi All, I don't know what happened. Today i was trying to access my phone's camera using the bottom-right icon but it was not working. Later I realized that my camera icon from the main menu is missing. Could someone please help me in this regard. Be
-
My macbook pro has a hair in the drive how can I fix it.
My cd/dvd drive for my macbook pro has a hair in the drive how can I fix it.