In ITS-Service ITSMOBILE no HTML-Template ALV_GRID.html

Hi all,
i use its-mobile with alv grid. In my Template i changed text:
Unknown type CUST_CTRL for element CONTAINER1
with:
`include(~service="itsmobile", ~theme="99", ~name="alv_grid.html");
alv_grid("ALV", 52, 8);`
But now i get the error: ITS_CANT_LOAD_INCLUDE - that file alv_grid.html is not found. That is right! When i look into ITSMOBILE -> Thema 99 -> HTML-Templates no file called alv_grid.html is there. So how do i get this file?
System is SAP ECC 6.0, Release 700 Support Package SAPKA70016.
Best Regards,
Max

Hi Max,
What is the BASIS Support pack that you are on?
I presume its the same level as your Application Support Pack SAPKA70016? i.e SAPKB70016
For ITSMobile - I thing you would need to be on SAPKB70018?
See notes:
[BC-FES-ITS #1320125 ITSmobile: fixed ALV Grid row selection|http://service.sap.com/sap/support/notes/1320125]
[BC-DWB-TOO-WAB #1142337 Generating program creates slow HTML mobile templates|http://service.sap.com/sap/support/notes/1142337]
Regards,
Oisin

Similar Messages

  • HTML Templates in integrated ITS

    Hi,
    I am using certain ITS services in integrated ITS. However, their look and feel is like WebGUI. For two of the services, there are HTML templates defined but still their look and feel is like WebGUI. If I do not definr ~GENERATEDYNPRO = 1, then I get an internal error. If I use this parameter, then the look and feel is SAP like.
    Any pointers?
    Thank you.
    Abhijeet.

    Hi abhijeet,
    Set by Service file
    ~ generateDynpro = 0 -Automatic screen generation 
                          disabled.
                       1 -Automatic screen generation
                          enabled.
    can you re-publish service again on your ITS and re-start ITS server and test this.
    Please share the result.
    Thnx,
    Suriya.

  • Html template change and refresh on ITS Admin

    hi all,
    I need to change the HTML templates sent via email to the users. I found the files on the ITS server and changed them but when I view the same templates in ITS Admin then it is still showing the previous version.
    The mentioned HTML templates are only present in the ITS server not as an internet service in SE80 so I cannot change and publish them from SAP.
    Please advise that how can they be changed and refreshed so the changes to the layout appear.
    Thanks,
    FS

    Hello FS,
    ITSAdmin and local files - so you are using an external ITS 6.20?
    If you did not start up the ITS in debug mode with ~adminenabled you will need to restart the ITS to apply the changes (that will be preparsed and cached in the ITS for performance reasons).
    With best regards,
      TJ

  • Calendar Functionality for a date field in HTML of  a ITS service

    Hi
    I am working with SRM EBP module we want to add date help(with calendar function) to existign date fields in Shopping cart and PO screens . I found some HTML and Javascripts in SYSTEM and BBPGLOBAL services (named as calendar)but not sure which ones to use if anyone used date functionality or even have access to Standard SAP ITS screens that already have date field with calendar fuctionality can you help???????????????
    Thanks in Advance

    Hi
    Let me first thank you for the quick response and timely help you provided calendar popup works great but one minor issue i am not able to click on the date entry and bring the field back into the field not sure if this funcitonality is in show_calendar.
    I would really appreciate if you get time to look at below i am almost there with your help......thanks again
    Here are the steps I did
    I have a HTML page  SAPLBBP_SC_UI_ITS screen 300 in SRM module , I created a new HTML page (zcalendar.html) in the same internet service BBPSC01 as suggested and I included in my HTML page SAPLBBP_SC_UI_ITS screen 300 and also I added below code to add a icon and a href call to the show_calendar function.
    Code works great I get the popup but when I double click on the date it is not selecting the date into the field back .
    Any thoughts??????
    <!-- Start ghantavine -->
    `include (~service="bbpsc01", ~name="zcalendar.html")`
    <!-- End ghantavine -->
    <!--    10/24/05 ghantavine--delivary date  -->
    `TR()`
        `if (GS_SCR_BASIC_I-DELIV_DATE.visible)`    
         `TR()`                                    
           `if (gs_scr_basic_i-deliv_date.disabled)`
              `TD(class="label", nowrap="x",
    active="")``TXT_BASIC_I-DELIV_DATE.label` 
              `TD(class="label", nowrap="x", active="")``gs_scr_basic_i-deliv_date.value`
            `else`  
                `TD(class="label", nowrap="x", active="")`<label
    for="`GS_SCR_BASIC_I-DELIV_DATE.name`">`TXT_BASIC_I-DELIV_DATE.label`</label>     
                `TD(class="data",  nowrap="x")`  
                <input type="text" id="GS_SCR_BASIC_I-DELIV_DATE"
    name="GS_SCR_BASIC_I-DELIV_DATE"  value="`GS_SCR_BASIC_I-DELIV_DATE.value`"
    maxlength="010" size="008">          
           <a href=http://mail.yahoo.com/config/login?/"_javascript:show_calendar();">
           <img id="anchor1" src="`mimeurl(~service="bbpglobal",
    ~name="images/button/f4.gif", ~language="", ~theme="99")`" />
           </a>
             `end`
          `TR()` `Lines()`
        `end`
    <!--      10/24/05 ghantavine--delivary date    -->
    below is the showcalendar code
    Hi , u save this as a html file and call this show_calendar fn  from Onclick button of your Calendar image .
    //  For generating the calendar
    var weekend = [0,6];
    var weekendColor = "#e0e0e0";
    var fontface = "Verdana";
    var fontsize = 2;
    var gNow = new Date();
    var ggWinCal;
    isNav = (navigator.appName.indexOf("Netscape") != -1) ? true : false;
    isIE = (navigator.appName.indexOf("Microsoft") != -1) ? true : false;
    Calendar.Months = ["January", "February", "March", "April", "May", "June",
    "July", "August", "September", "October", "November", "December"];
    // Non-Leap year Month days..
    Calendar.DOMonth = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    // Leap year Month days..
    Calendar.lDOMonth = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    function Calendar(p_item, p_WinCal, p_month, p_year, p_format) {
         if ((p_month == null) && (p_year == null))     return;
         if (p_WinCal == null)
              this.gWinCal = ggWinCal;
         else
              this.gWinCal = p_WinCal;
         if (p_month == null) {
              this.gMonthName = null;
              this.gMonth = null;
              this.gYearly = true;
         } else {
              this.gMonthName = Calendar.get_month(p_month);
              this.gMonth = new Number(p_month);
              this.gYearly = false;
         this.gYear = p_year;
         this.gFormat = p_format;
         this.gBGColor = "white";
         this.gFGColor = "black";
         this.gTextColor = "black";
         this.gHeaderColor = "black";
         this.gReturnItem = p_item;
    Calendar.get_month = Calendar_get_month;
    Calendar.get_daysofmonth = Calendar_get_daysofmonth;
    Calendar.calc_month_year = Calendar_calc_month_year;
    Calendar.print = Calendar_print;
    function Calendar_get_month(monthNo) {
         return Calendar.Months[monthNo];
    function Calendar_get_daysofmonth(monthNo, p_year) {
         Check for leap year ..
         1.Years evenly divisible by four are normally leap years, except for...
         2.Years also evenly divisible by 100 are not leap years, except for...
         3.Years also evenly divisible by 400 are leap years.
         if ((p_year % 4) == 0) {
              if ((p_year % 100) == 0 && (p_year % 400) != 0)
                   return Calendar.DOMonth[monthNo];
              return Calendar.lDOMonth[monthNo];
         } else
              return Calendar.DOMonth[monthNo];
    function Calendar_calc_month_year(p_Month, p_Year, incr) {
         Will return an 1-D array with 1st element being the calculated month
         and second being the calculated year
         after applying the month increment/decrement as specified by 'incr' parameter.
         'incr' will normally have 1/-1 to navigate thru the months.
         var ret_arr = new Array();
         if (incr == -1) {
              // B A C K W A R D
              if (p_Month == 0) {
                   ret_arr[0] = 11;
                   ret_arr[1] = parseInt(p_Year) - 1;
              else {
                   ret_arr[0] = parseInt(p_Month) - 1;
                   ret_arr[1] = parseInt(p_Year);
         } else if (incr == 1) {
              // F O R W A R D
              if (p_Month == 11) {
                   ret_arr[0] = 0;
                   ret_arr[1] = parseInt(p_Year) + 1;
              else {
                   ret_arr[0] = parseInt(p_Month) + 1;
                   ret_arr[1] = parseInt(p_Year);
         return ret_arr;
    function Calendar_print() {
         ggWinCal.print();
    function Calendar_calc_month_year(p_Month, p_Year, incr) {
         Will return an 1-D array with 1st element being the calculated month
         and second being the calculated year
         after applying the month increment/decrement as specified by 'incr' parameter.
         'incr' will normally have 1/-1 to navigate thru the months.
         var ret_arr = new Array();
         if (incr == -1) {
              // B A C K W A R D
              if (p_Month == 0) {
                   ret_arr[0] = 11;
                   ret_arr[1] = parseInt(p_Year) - 1;
              else {
                   ret_arr[0] = parseInt(p_Month) - 1;
                   ret_arr[1] = parseInt(p_Year);
         } else if (incr == 1) {
              // F O R W A R D
              if (p_Month == 11) {
                   ret_arr[0] = 0;
                   ret_arr[1] = parseInt(p_Year) + 1;
              else {
                   ret_arr[0] = parseInt(p_Month) + 1;
                   ret_arr[1] = parseInt(p_Year);
         return ret_arr;
    // This is for compatibility with Navigator 3, we have to create and discard one object before the prototype object exists.
    new Calendar();
    Calendar.prototype.getMonthlyCalendarCode = function() {
         var vCode = "";
         var vHeader_Code = "";
         var vData_Code = "";
         // Begin Table Drawing code here..
         vCode = vCode + "<TABLE BORDER=1 BGCOLOR=\"" + this.gBGColor + "\">";
         vHeader_Code = this.cal_header();
         vData_Code = this.cal_data();
         vCode = vCode + vHeader_Code + vData_Code;
         vCode = vCode + "</TABLE>";
         return vCode;
    Calendar.prototype.show = function() {
         var vCode = "";
         this.gWinCal.document.open();
         // Setup the page...
         this.wwrite("<html>");
         this.wwrite("<head><title>Calendar</title>");
         this.wwrite("</head>");
         this.wwrite("<body " +
              "link=\"" + this.gLinkColor + "\" " +
              "vlink=\"" + this.gLinkColor + "\" " +
              "alink=\"" + this.gLinkColor + "\" " +
              "text=\"" + this.gTextColor + "\">");
         this.wwriteA("<FONT FACE='" + fontface + "' SIZE=2><B>");
         this.wwriteA(this.gMonthName + " " + this.gYear);
         this.wwriteA("</B><BR>");
         // Show navigation buttons
         var prevMMYYYY = Calendar.calc_month_year(this.gMonth, this.gYear, -1);
         var prevMM = prevMMYYYY[0];
         var prevYYYY = prevMMYYYY[1];
         var nextMMYYYY = Calendar.calc_month_year(this.gMonth, this.gYear, 1);
         var nextMM = nextMMYYYY[0];
         var nextYYYY = nextMMYYYY[1];
         this.wwrite("<TABLE WIDTH='100%' BORDER=1 CELLSPACING=0 CELLPADDING=0 BGCOLOR='#e0e0e0'><TR><TD ALIGN=center>");
         this.wwrite("[<A HREF=\"" +
              "javascript:window.opener.Build(" +
              "'" + this.gReturnItem + "', '" + this.gMonth + "', '" + (parseInt(this.gYear)-1) + "', '" + this.gFormat + "'" +
              ");" +
              "\"><<<\/A>]</TD><TD ALIGN=center>");
         this.wwrite("[<A HREF=\"" +
              "javascript:window.opener.Build(" +
              "'" + this.gReturnItem + "', '" + prevMM + "', '" + prevYYYY + "', '" + this.gFormat + "'" +
              ");" +
              "\"><<\/A>]</TD><TD ALIGN=center>");
         this.wwrite("[<A HREF=\"javascript:window.print();\">Print</A>]</TD><TD ALIGN=center>");
         this.wwrite("[<A HREF=\"" +
              "javascript:window.opener.Build(" +
              "'" + this.gReturnItem + "', '" + nextMM + "', '" + nextYYYY + "', '" + this.gFormat + "'" +
              ");" +
              "\">><\/A>]</TD><TD ALIGN=center>");
         this.wwrite("[<A HREF=\"" +
              "javascript:window.opener.Build(" +
              "'" + this.gReturnItem + "', '" + this.gMonth + "', '" + (parseInt(this.gYear)+1) + "', '" + this.gFormat + "'" +
              ");" +
              "\">>><\/A>]</TD></TR></TABLE><BR>");
         // Get the complete calendar code for the month..
         vCode = this.getMonthlyCalendarCode();
         this.wwrite(vCode);
         this.wwrite("</font></body></html>");
         this.gWinCal.document.close();
    Calendar.prototype.showY = function() {
         var vCode = "";
         var i;
         var vr, vc, vx, vy;          // Row, Column, X-coord, Y-coord
         var vxf = 285;               // X-Factor
         var vyf = 200;               // Y-Factor
         var vxm = 10;               // X-margin
         var vym;                    // Y-margin
         if (isIE)     vym = 75;
         else if (isNav)     vym = 25;
         this.gWinCal.document.open();
         this.wwrite("<html>");
         this.wwrite("<head><title>Calendar</title>");
         this.wwrite("<style type='text/css'>\n<!--");
         for (i=0; i<12; i++) {
              vc = i % 3;
              if (i>=0 && i<= 2)     vr = 0;
              if (i>=3 && i<= 5)     vr = 1;
              if (i>=6 && i<= 8)     vr = 2;
              if (i>=9 && i<= 11)     vr = 3;
              vx = parseInt(vxf * vc) + vxm;
              vy = parseInt(vyf * vr) + vym;
              this.wwrite(".lclass" + i + " {position:absolute;top:" + vy + ";left:" + vx + ";}");
         this.wwrite("-->\n</style>");
         this.wwrite("</head>");
         this.wwrite("<body " +
              "link=\"" + this.gLinkColor + "\" " +
              "vlink=\"" + this.gLinkColor + "\" " +
              "alink=\"" + this.gLinkColor + "\" " +
              "text=\"" + this.gTextColor + "\">");
         this.wwrite("<FONT FACE='" + fontface + "' SIZE=2><B>");
         this.wwrite("Year : " + this.gYear);
         this.wwrite("</B><BR>");
         // Show navigation buttons
         var prevYYYY = parseInt(this.gYear) - 1;
         var nextYYYY = parseInt(this.gYear) + 1;
         this.wwrite("<TABLE WIDTH='100%' BORDER=1 CELLSPACING=0 CELLPADDING=0 BGCOLOR='#e0e0e0'><TR><TD ALIGN=center>");
         this.wwrite("[<A HREF=\"" +
              "javascript:window.opener.Build(" +
              "'" + this.gReturnItem + "', null, '" + prevYYYY + "', '" + this.gFormat + "'" +
              ");" +
              "\" alt='Prev Year'><<<\/A>]</TD><TD ALIGN=center>");
         this.wwrite("[<A HREF=\"javascript:window.print();\">Print</A>]</TD><TD ALIGN=center>");
         this.wwrite("[<A HREF=\"" +
              "javascript:window.opener.Build(" +
              "'" + this.gReturnItem + "', null, '" + nextYYYY + "', '" + this.gFormat + "'" +
              ");" +
              "\">>><\/A>]</TD></TR></TABLE><BR>");
         // Get the complete calendar code for each month..
         var j;
         for (i=11; i>=0; i--) {
              if (isIE)
                   this.wwrite("<DIV ID=\"layer" + i + "\" CLASS=\"lclass" + i + "\">");
              else if (isNav)
                   this.wwrite("<LAYER ID=\"layer" + i + "\" CLASS=\"lclass" + i + "\">");
              this.gMonth = i;
              this.gMonthName = Calendar.get_month(this.gMonth);
              vCode = this.getMonthlyCalendarCode();
              this.wwrite(this.gMonthName + "/" + this.gYear + "<BR>");
              this.wwrite(vCode);
              if (isIE)
                   this.wwrite("</DIV>");
              else if (isNav)
                   this.wwrite("</LAYER>");
         this.wwrite("</font><BR></body></html>");
         this.gWinCal.document.close();
    Calendar.prototype.wwrite = function(wtext) {
         this.gWinCal.document.writeln(wtext);
    Calendar.prototype.wwriteA = function(wtext) {
         this.gWinCal.document.write(wtext);
    Calendar.prototype.cal_header = function() {
         var vCode = "";
         vCode = vCode + "<TR>";
         vCode = vCode + "<TD WIDTH='14%'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Sun</B></FONT></TD>";
         vCode = vCode + "<TD WIDTH='14%'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Mon</B></FONT></TD>";
         vCode = vCode + "<TD WIDTH='14%'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Tue</B></FONT></TD>";
         vCode = vCode + "<TD WIDTH='14%'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Wed</B></FONT></TD>";
         vCode = vCode + "<TD WIDTH='14%'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Thu</B></FONT></TD>";
         vCode = vCode + "<TD WIDTH='14%'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Fri</B></FONT></TD>";
         vCode = vCode + "<TD WIDTH='16%'><FONT SIZE='2' FACE='" + fontface + "' COLOR='" + this.gHeaderColor + "'><B>Sat</B></FONT></TD>";
         vCode = vCode + "</TR>";
         return vCode;
    Calendar.prototype.cal_data = function() {
         var vDate = new Date();
         vDate.setDate(1);
         vDate.setMonth(this.gMonth);
         vDate.setFullYear(this.gYear);
         var vFirstDay=vDate.getDay();
         var vDay=1;
         var vLastDay=Calendar.get_daysofmonth(this.gMonth, this.gYear);
         var vOnLastDay=0;
         var vCode = "";
         Get day for the 1st of the requested month/year..
         Place as many blank cells before the 1st day of the month as necessary.
         vCode = vCode + "<TR>";
         for (i=0; i<vFirstDay; i++) {
              vCode = vCode + "<TD WIDTH='14%'" + this.write_weekend_string(i) + "><FONT SIZE='2' FACE='" + fontface + "'> </FONT></TD>";
         // Write rest of the 1st week
         for (j=vFirstDay; j<7; j++) {
              vCode = vCode + "<TD WIDTH='14%'" + this.write_weekend_string(j) + "><FONT SIZE='2' FACE='" + fontface + "'>" +
                   "<A HREF='#' " +
                        "onClick=\"self.opener.document." + this.gReturnItem + ".value='" +
                        this.format_data(vDay) +
                        "';window.close();\">" +
                        this.format_day(vDay) +
                   "</A>" +
                   "</FONT></TD>";
              vDay=vDay + 1;
         vCode = vCode + "</TR>";
         // Write the rest of the weeks
         for (k=2; k<7; k++) {
              vCode = vCode + "<TR>";
              for (j=0; j<7; j++) {
                   vCode = vCode + "<TD WIDTH='14%'" + this.write_weekend_string(j) + "><FONT SIZE='2' FACE='" + fontface + "'>" +
                        "<A HREF='#' " +
                             "onClick=\"self.opener.document." + this.gReturnItem + ".value='" +
                             this.format_data(vDay) +
                             "';window.close();\">" +
                        this.format_day(vDay) +
                        "</A>" +
                        "</FONT></TD>";
                   vDay=vDay + 1;
                   if (vDay > vLastDay) {
                        vOnLastDay = 1;
                        break;
              if (j == 6)
                   vCode = vCode + "</TR>";
              if (vOnLastDay == 1)
                   break;
         // Fill up the rest of last week with proper blanks, so that we get proper square blocks
         for (m=1; m<(7-j); m++) {
              if (this.gYearly)
                   vCode = vCode + "<TD WIDTH='14%'" + this.write_weekend_string(j+m) +
                   "><FONT SIZE='2' FACE='" + fontface + "' COLOR='gray'> </FONT></TD>";
              else
                   vCode = vCode + "<TD WIDTH='14%'" + this.write_weekend_string(j+m) +
                   "><FONT SIZE='2' FACE='" + fontface + "' COLOR='gray'>" + m + "</FONT></TD>";
         return vCode;
    Calendar.prototype.format_day = function(vday) {
         var vNowDay = gNow.getDate();
         var vNowMonth = gNow.getMonth();
         var vNowYear = gNow.getFullYear();
         if (vday == vNowDay && this.gMonth == vNowMonth && this.gYear == vNowYear)
              return ("<FONT COLOR=\"RED\"><B>" + vday + "</B></FONT>");
         else
              return (vday);
    Calendar.prototype.write_weekend_string = function(vday) {
         var i;
         // Return special formatting for the weekend day.
         for (i=0; i<weekend.length; i++) {
              if (vday == weekend<i>)
                   return (" BGCOLOR=\"" + weekendColor + "\"");
         return "";
    Calendar.prototype.format_data = function(p_day) {
         var vData;
         var vMonth = 1 + this.gMonth;
         vMonth = (vMonth.toString().length < 2) ? "0" + vMonth : vMonth;
         var vMon = Calendar.get_month(this.gMonth).substr(0,3).toUpperCase();
         var vFMon = Calendar.get_month(this.gMonth).toUpperCase();
         var vY4 = new String(this.gYear);
         var vY2 = new String(this.gYear.substr(2,2));
         var vDD = (p_day.toString().length < 2) ? "0" + p_day : p_day;
    /*     switch (this.gFormat) {
              case "MM\/DD\/YYYY" :
                   vData = vMonth + "\/" + vDD + "\/" + vY4;
                   break;
              case "MM\/DD\/YY" :
                   vData = vMonth + "\/" + vDD + "\/" + vY2;
                   break;
              case "MM-DD-YYYY" :
                   vData = vMonth + "-" + vDD + "-" + vY4;
                   break;
              case "MM-DD-YY" :
                   vData = vMonth + "-" + vDD + "-" + vY2;
                   break;
              case "DD\/MON\/YYYY" :
                   vData = vDD + "\/" + vMon + "\/" + vY4;
                   break;
              case "DD\/MON\/YY" :
                   vData = vDD + "\/" + vMon + "\/" + vY2;
                   break;
              case "DD-MON-YYYY" :
                   vData = vDD + "-" + vMon + "-" + vY4;
                   break;
              case "DD-MON-YY" :
                   vData = vDD + "-" + vMon + "-" + vY2;
                   break;
              case "DD\/MONTH\/YYYY" :
                   vData = vDD + "\/" + vFMon + "\/" + vY4;
                   break;
              case "DD\/MONTH\/YY" :
                   vData = vDD + "\/" + vFMon + "\/" + vY2;
                   break;
              case "DD-MONTH-YYYY" :
                   vData = vDD + "-" + vFMon + "-" + vY4;
                   break;
              case "DD-MONTH-YY" :
                   vData = vDD + "-" + vFMon + "-" + vY2;
                   break;
              case "DD\/MM\/YYYY" :
                   vData = vDD + "\/" + vMonth + "\/" + vY4;
                   break;
              case "DD\/MM\/YY" :
                   vData = vDD + "\/" + vMonth + "\/" + vY2;
                   break;
              case "DD-MM-YYYY" :
                   vData = vDD + "-" + vMonth + "-" + vY4;
                   break;
              case "DD-MM-YY" :
                   vData = vDD + "-" + vMonth + "-" + vY2;
                   break;
              default :
                   vData = vMonth + "\/" + vDD + "\/" + vY4;
    vData = vY4vMonthvDD ;
    //vData = vDD"."vMonth"."vY4;
         return vData;
    function Build(p_item, p_month, p_year, p_format) {
         var p_WinCal = ggWinCal;
         gCal = new Calendar(p_item, p_WinCal, p_month, p_year, p_format);
         // Customize your Calendar here..
         gCal.gBGColor="white";
         gCal.gLinkColor="black";
         gCal.gTextColor="black";
         gCal.gHeaderColor="darkgreen";
         // Choose appropriate show function
         if (gCal.gYearly)     gCal.showY();
         else     gCal.show();
    function show_calendar() {
              p_month : 0-11 for Jan-Dec; 12 for All Months.
              p_year     : 4-digit year
              p_format: Date format (mm/dd/yyyy, dd/mm/yy, ...)
              p_item     : Return Item.
         p_item = arguments[0];
         if (arguments[1] == null)
              p_month = new String(gNow.getMonth());
         else
              p_month = arguments[1];
         if (arguments[2] == "" || arguments[2] == null)
              p_year = new String(gNow.getFullYear().toString());
         else
              p_year = arguments[2];
         if (arguments[3] == null)
              p_format = "MM/DD/YYYY";
         else
              p_format = arguments[3];
         vWinCal = window.open("", "Calendar",
              "width=300,height=250,status=no,resizable=no,top=100,left=100");
         vWinCal.opener = self;
         ggWinCal = vWinCal;
         Build(p_item, p_month, p_year, p_format);
    Yearly Calendar Code Starts here
    function show_yearly_calendar(p_item, p_year, p_format) {
         // Load the defaults..
         if (p_year == null || p_year == "")
              p_year = new String(gNow.getFullYear().toString());
         if (p_format == null || p_format == "")
              p_format = "MM/DD/YYYY";
         var vWinCal = window.open("", "Calendar", "scrollbars=yes");
         vWinCal.opener = self;
         ggWinCal = vWinCal;
         Build(p_item, null, p_year, p_format);

  • ITSMobile HTML template adjustment

    Hi Experts,
    we are doing WM RF barcode scanning projects, there are many many ABAP screens translated to HTML page for displaying in the hand held devide, but the problem is, the screen is relatively small (320*240 pixals) so that the HTML page (tcode LM01 etc) can not fit in one screen, it is too large, user need to drag the scrollbars vertially and horizontally, that's not convenient.
    I tried to modified the html page and also apply the css file to resize the page size, but since the are lots of screens/HTML template, it's terrible to modify the pages one by one. Could you give some idea of modify those page more quickly?
    By the way, the css file doesn't solve the problem since there are many width tags are hard coded, for example: <input type="button" style="width:'w("10","8.200em")'" '>    I need to change 8.200em to 5.200 page by page, besides this, there are many other places I need to modify, that's terrible...
    Please kindly advice whether there is a simple way.
    Thank you very much
    Fresh_man

    Maybe this answer is very late, but I was having the same problem but I have fixed this by adding this following to the service "GUI configuration":
    ~ITSMOBILEELEMFACTOR: 8
    ~ITSMOBILEELEMUNITS: px
    By changing the factor I was able to change the width of the buttons. Now the buttons fit perfectly within the RF screens.
    Hope this helps you out.
    Regards,
    Erkan

  • SRM ITS - Modify HTML templates

    Hello,
    I am currently trying to understand the flow of the ITS and the SAP about how the screens are converted into HTML templates to be displayed on the web browsers. I would like to know if it is possible to modify the HTML templates and add some of our own JavaScript Validation or even add our own text field or other objects without touching the ABAP code?
    Thanks,
    Pramod

    Hi Pramod,
    You can always change the templates, If you know the standard Program ( You can get the standard program from SE80, input the template name and it gives the details of the programs related to that template) once you know the program you can do the changes in SE51( Screen painter), Input the Program name and the screen number for which this change is required.
    Once you input click on Display/ change and at the top in the applicaton toolbar there will be a push button called Layout, click on that that takes you to screen painter where you can add new text fields.
    For validation purpose in SRM there a badi BBP_DOC_CHECK which is used for validation purpose, but you need to do some coding depend upon your requirement
    Regards
    Sameer

  • Calendar popup for a date field in ITS service

    Hi
    I am working with SRM EBP module we want to add date help(with calendar function) to existing date fields in Shopping cart and PO screens . I found some HTML and scripts in SYSTEM and BBPGLOBAL(assuming in regular ITS this service might be GLOBAL) services but not sure which ones to use if anyone used date functionality or even have access to Standard SAP ITS screens that already have date field with calendar functionality can you help???????????????
    Scenario what we are trying to do
    1) On the shopping cart details there is a require on field
    2) we are trying to add a f4 icon(which we did successfully)
    3) when a click happens on the icon a calendar popup should appear(for this we are trying to identify what standard SAP function we can use if not i got a JavaScript on the web trying to see how to integrate that script)
    Thanks in Advance

    Hi
    I browsed thru other services i found PZLE_06 and there is a date field with popup but difference between ESS and SRM is ESS i saw uses webgui concept and SRM has different approach if you can point me to the html template in one of the service where the calendar function is called that will be helpful i tried no luck i got the funciton issue is integrating it with existing code in HTML i mean calling the javascript from HTML i am not able to .
    Thank You
    Vineela

  • Changes to HTML template not reflected in production

    Hi All,
    I am facing the following issue.
    I have changed an already existing screen(HTML template) and published the service. It is working fine in development environment. This is now transported to production environment and the screen change is not reflected here. We have tried refresing the ITS buffer, but hasnt worked. Any pointers would be of great help.
    Thanks,
    Shruti

    Hi Shruti,
    did you check the changed template in the productive environment? Did the transport successfully reached the new system?
    If the changed template is available please (re)publish the file on the new environment.
    Regards,
    Sabine

  • Creating a simple HTML template

    Hello All,
    I have to create a simple HTML template for a screen in SRM for Mass change of a field on contracts. I have ITS service ready and I have created a HTML template with reference to the prorgam and screen. It generated following code. what change do I need to make to make the template displayed. When i run the template it gives me an error 'URL http://XXXXX/sap/bc/gui/sap/its/ysrm_ctr_mass/ call was terminated because the corresponding service is not available'.I have never worked on HTML templates before. Anybody wannna help me, pls?
    Here's the generated code:
    `include(~service="system", ~language="", ~theme="dm", ~name="TemplateLibraryDHTML.html")`
          `SAP_DynproLayerBegin(003,001,028,001)`
          `SAP_Label("%#AUTOTEXT001")`
          `SAP_DynproLayerEnd()`
          `SAP_DynproLayerBegin(003,003,020,001)`
          `SAP_Label("YSRMS_CTR_MASS_NEG_AMEND-YYNEG_AMEND_OLD")`
          `SAP_DynproLayerEnd()`
          `SAP_DynproLayerBegin(030,003,005,001)`
          `SAP_InputField("YSRMS_CTR_MASS_NEG_AMEND-YYNEG_AMEND_OLD")`
          `SAP_DynproLayerEnd()`
          `SAP_DynproLabelLine(003,003,030)`
          `SAP_DynproLayerBegin(003,004,020,001)`
          `SAP_Label("YSRMS_CTR_MASS_NEG_AMEND-YYNEG_AMEND_NEW")`
          `SAP_DynproLayerEnd()`
          `SAP_DynproLayerBegin(030,004,005,001)`
          `SAP_InputField("YSRMS_CTR_MASS_NEG_AMEND-YYNEG_AMEND_NEW")`
          `SAP_DynproLayerEnd()`
          `SAP_DynproLabelLine(003,004,030)`
          `SAP_DynproLayerBegin(004,006,014,001)`
          `SAP_Button("CTR_NEG_AMEND_REJ")`
          `SAP_DynproLayerEnd()`
    Thanks,
    Chandra

    Hi
    Which SRM version are you using ?
    Please do the following steps ->
    -->Activate the services through SICF  - SRM transaction code.
    > Go to SICF transaction and activate the whole tree under the node Default host>sap>bc>gui>sap>its.
    Right click on any of the services (there you will find option to De-actiave / activate the service)
    Related links ->
    Note 851940 - Launchpad in BBPSTART has wrong URL for services
    Re: Service Cannot be Reached
    Please ensure IACOR service must be running correctly before publishing the HTML Templates using the report - W3_PUBLISH_SERVICES
    When you are using the Internal ITS,you need not run the report W3_PUBLISH_SERVICES.(only SIAC_PUBLISH_ALL_INT )
    Re: Activating a Service in SICF
    Regards
    - Atul

  • Extended HTML Template Not Displayed?

    Hi,
    I have created an internet service (ZTZ60) for transaction TZ60 and created HTML templates for screen 100 and 200. I have extended screen 100 HTML template with the following code:
    'SAP_DynproLayerBegin(051,002,015,001)'
    <a href="http://www.sdn.sap.com">SAP Developer Network</a>
    'SAP_DynproLayerEnd()'
    After publishing the internet service, I still see the standard transaction without my extension. What am I doing wrong?
    Thanks in advance.
    / Elvez

    Elvez,
    Did you ever determine how to fix that issue? I am now having the same issue... was it as simple as refreshing the ITS buffer?
    Thank you.
    Nick

  • How to update HTML template manually

    Hi,
    I have added a custom field in SHip-To address screen in Shopping cart in BBPSC01 and added a functionality. Found it is working fine in SAP GUI side.
    It is not reflecting in URL. But to reflect the same in URL, can anyone let me know what HTML code needs to write in HTML template..as I am new to HTML
    Is there any auto update of HTML template.
    Thanks,
    Rakesh.

    Hi
    Which SRM version are you using ?  What is your business requirement ?
    Incase you have made the changes manually, you need to ensure that in SE80 for the Internet Service (- say BBPSC01 ), all the manually modified HTML Templates ( by referring to any SAP OSS Note, or due to some customer requirements etc)  are having correct source code as well the HTML are published on all the respective SRM ITS Internet Sites.
    Do let me know, incase you face any issues.
    Regards
    - Atul

  • How to migrate Themes, HTML templates, MIME objects to ECC6.0

    Hi Friends
    How to migrate Themes, HTML templates, MIME objects which are developed in SAP Web@Studio.
    or How to use program SIAC_UPLOAD ??
    regards
    siddharth

    Hello Murray,
    Your steps sound correct.  I would add that you generally need the following:
    1. publish the IAC, SYSTEM, and WEBGUI Internet Services (also from SE80)
    2. make sure the Integrated ITS is working.  Meaning you should activate the ITS in the profile parameter, this can be seen in transaction SITSPMON.  Some services in transaction SICF also need to be activated, like the default_host/sap/public/bc/its
    From your error message though it looks like the URL you have used is either incorrect or you have used the External Alias feature in SICF?  The URL for the ITS is usually http://host:port/sap/bc/gui/sap/its/service.  Second, the error is about a language resource file (.htrc), you have not specified if you created one or not.  To create one in the language you are logged in with just go to SE80, open your Internet Service and double click on the "Topic xx".  Don't forget to publish after creating and saving it.
    Edgar

  • ESS-ITS services

    Hello All,
           We have a standalone ITS(6.2).We have two instances with the same ip for the host ITS machine.
          One of the instances is for r/3 4.7 for ESS.When we execute PZ02 through the browser,we get the same webgui screens.
          Do we have to define the HTML templates for some of the services.g.PZ02??And also these are the standard IAC's provided by SAP for ESS,then why are we gettin the webgui screens for these services???
        Can anyone please help.
    Thanks & Regards,
    Deepti.

    Hello Deepti,
    there are services (e.g.PZ02) which can run without a HTML template; in this case you have to make sure that serviceparameter "~generatedynpro 1" is set in the service file (e.g. pz02.srvc).
    Best regards,
    Sabine

  • How to adjust html template manually

    I have got some templates to be adjusted manually in spau adjustments during an upgrade. What will be the steps involved in the same if any one has an idea on the same.
    Thanks
    Anirban

    Hi
    Which SRM version are you using ?  What is your business requirement ?
    Incase you have made the changes manually, you need to ensure that in SE80 for the Internet Service (- say BBPSC01 ), all the manually modified HTML Templates ( by referring to any SAP OSS Note, or due to some customer requirements etc)  are having correct source code as well the HTML are published on all the respective SRM ITS Internet Sites.
    Do let me know, incase you face any issues.
    Regards
    - Atul

  • Call ITS services in Java program

    Hi,
    I have a requirement to access ITS services not in a web browser, but in a Java program. The java program should simulate the web browser. The java program has to open URL connection with ITS, get the HTML page, parse the HTML tags to get the input fields and button information and send it to 3rd party program. Based on the data returned by the 3rd party program, the Java program also has to submit the data on the current HTML page and get the next HTML page.
    The HTML templates used for the above requriement are generated using 'Classic' style.
    The ITS used is Integrated ITS and the java program runs on Netweaver AS.
    I am facing problems in opening up URL connection with ITS through java program, It gives HTTP error. But the URL is working fine in Web browser. The URL looks like
    http://<sap host>:<port>/sap/<ICF service>?sap-client=100&sap-user=<user>&sap-password=<password>
    Thanks & Regards,
    Sudhakar
    Updated:
    I have found the reason for my above reported issue.  The SAP system function ICF_DISPATCH is throwing dump. This system function supports only some web clients for the ICF services. It supports Internet Explorer, Mozarilla fire fox, but doesn't support Google chrome or HTTP request from Java program (my case).
    I am trying to look for the source code of the system function ICF_DISPATCH. SAP documentation says that all the system functions are available in the file sapactab.h. I tried to locate the file in kernel, but couldn't find it. I searched SDN forums too, but didn't get much help.
    Can somebody please advise me on how to overcome this issue.
    Edited by: Sudhakar Ravuri on Dec 23, 2008 8:00 AM

    I recommend to read SAP note 972116 and disable the browser check. But be aware that in this environment no javascript is available. Therefore only services carefully designed will run unders these conditions. WebGUI, EWT.. will not work.
    Regards,
    Klaus

Maybe you are looking for