Add ordr (sales) with xml

Hello,
I'm trying to add an order with an xml file:
FileName = "C:tempOrderXml.xml"
Ecount = oCompany.GetXMLelementCount(FileName)
Dim eType As SAPbobsCOM.BoObjectTypes = oCompany.GetXMLobjectType(FileName, ii)
If oCompany.GetXMLobjectType(FileName, ii) = SAPbobsCOM.BoObjectTypes Then
                oOrder = oCompany.GetBusinessObjectFromXML(FileName, ii)
                oOrder.Add()
XML-file:
<?xml version="1.0" encoding="UTF-16"?>
<BOM>
<BO>
<AdmInfo>
<Object>17</Object>
</AdmInfo>
<ORDR>
<row> 
<DocNum>2</DocNum>
<CardCode>D001</CardCode>  
</row>
</ORDR>
<RDR1>
<row> 
<LineNum>0</LineNum>
<ItemCode>Macer1717</ItemCode>   
<Quantity>1</Quantity>
</row>
</RDR1>
</BO>
</BOM>
But Sap don't add an order.
Does someone know what I do wrong?
Thanks!

Sorry this is the code.
But still nothing is posted in Sap.
        oOrder = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oOrders)
        FileName = "C:tempOrder.xml"
        Ecount = oCompany.GetXMLelementCount(FileName)
        For ii = 0 To Ecount - 1
            If oCompany.GetXMLobjectType(FileName, ii) = SAPbobsCOM.BoObjectTypes.oOrders Then
                oOrder = oCompany.GetBusinessObjectFromXML(FileName, ii)
                'oOrder.Lines.Add()
                'oOrder.Add()
                MessageBox.Show("Order toegevoegd")
                Exit For
            End If
        Next ii
The value of ii = 0
The condition is true because I'm getting an messagebox. It only compare of the object (order = 17) is equal with the object in the xml-file
I tried to add an order by hardcode but still nothing post.
See code:
Dim oOrder As SAPbobsCOM.Documents
        oOrder = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oOrders)
        oOrder.CardCode = "D001"
        oOrder.DocDate = Date.Now
        oOrder.Lines.ItemCode = "Macer1717"
        oOrder.Lines.Quantity = 1
        oOrder.Add()
        MessageBox.Show("Order toegevoegd")
Maybe does someone has documentation about the transaction objectes ;"documents"? I cann't find anything on sdn.
Is it possible to add an order by xml? Please help me.

Similar Messages

  • Newbie, Please help, How do I add CDATA to exsting xml flash asset

    Hi, I am a front end web designer/developer and
    analyst...struggling with putting an accordian flash xml menu
    together. I have it done except I need to add a simple trademark
    symbol circle with r. I am struggling with how to do this since I
    am not savvy in actioncript. I assume the best way is to add it is
    with a CDATA child node, but do not know how or whatever is the
    best way to get this done since am on a tight deadline. I need
    someone to explain step by step what I have to do to get this
    simple addition resolved. Attached are the links to home page and
    code for the xml file. The left navigation is the asset that I need
    to add the trademark symbol under about, about ADHERE. Thanks so
    much in advance!!!!!!
    [URL=http://www.nodcreative.com/natrecor_sliced/natrecor_index.html]index
    page with flash xml menu asset[/URL]
    xml code:
    <?xml version="1.0" encoding="UTF-8"?>
    <accodion>
    <item name="HOME">
    </item>
    <item name="ABOUT">
    <item name= "ABOUT
    ADHERE<![CDATA[write]]>"></item>
    <item name="Medical Information" url="
    http://www.jnj.com?ref=Random">
    </item>
    <item name="About SCIOS" url="
    http://www.jnj.com?ref=Random">
    </item>
    </item>
    <item name="INTERACTIVE DOSING INFORMATION">
    <item name="Indications and Usage" url="
    http://www.jnj.com?ref=Random"></item>
    <item name="Contraindications" url="
    http://www.jnj.com?ref=Random"></item>
    <item name="Warnings" url="
    http://www.jnj.com?ref=Random"></item>
    <item name="Dosage and Administration" url="
    http://www.jnj.com?ref=Random"></item>
    </item>
    <item name="RESOURCES AND TOOLS">
    <item name="NATRECOR PI" url="
    http://www.jnj.com?ref=Random"></item>
    <item name="About Heart Failure" url="
    http://www.jnj.com?ref=Random"></item>
    <item name="Stages of Heart Failure" url="
    http://www.jnj.com?ref=Random"></item>
    <item name="NATRECOR Dosing Information" url="
    http://www.jnj.com?ref=Random"></item>
    <item name="Patient Management Resources" url="
    http://www.jnj.com?ref=Random"></item>
    </item>
    <item name="US PRESCRIBING INFORMATION">
    </item>
    <item name="IMPORTANT SAFETY INFORMATION
    ref=http://www.jnj.com">
    </item>
    <item name="REGISTRATION ref=http://www.jnj.com">
    </item>
    </accodion>
    FLASH actionscript is as follows:
    // The accordion
    var accordion = this
    // The item list
    var itemList = []
    // SETTINGS
    //-------------PROPERTIES----------------
    // Separation between the buttons
    var separation = 1.5
    // Tabulation between the buttons and the margin
    var tabulation = 10
    // if true, it cant be more than one items opened at the same
    time (only for the first buttons, POWERFUL, MENU ,ACCORDION, ets).
    var autoClose = true
    // if true, it cant be more than one subItems opened at the
    same time.
    var subItemAutoClose = true
    // if true, open and close all the subItems at the same time.
    var openAll = false
    // The height of the button
    var itemHeight = 21
    // The width of the button
    var itemWidth = 230
    // If true, show the light over the button
    var light = true
    // The ease of the menu opening
    var openEase = 2.5
    // The ease of the menu closing
    var closeEase = 2.5
    // The rollOut color fade speed
    var rollOutFade = 8
    //-------------COLORS----------------
    // The color of the button
    var buttonColor = 0xa
    // The roll over color
    var rollOverColor = 0xCCCCCC
    // The arrow color
    var arrowColor = 0xCCCCCC
    // The arrow color on roll over
    var rollOverArrowColor = 0x000000
    // The text color
    var TextColor = 0xFFFFFF
    // The text color on roll over
    var rollOverText = 0x000000
    // LOADING XML
    // The xml data
    var xmlSource:XML = new XML
    // Loading the xml
    xmlSource.onLoad = function(success:Boolean):Void {
    // When the load finishs...
    if (success) {
    // The first node of the xml
    xmlRoot = xmlSource.firstChild
    // The item nodes
    xmlItems = xmlRoot.childNodes
    // The total of items
    total = xmlItems.length
    // Creating the buttons
    for (i=0; i<total; i++){
    // Attaching the buttons
    accordion.attachMovie("item", "item" + i, i)
    // The button reference
    itemList
    = accordion["item"+i]
    // The first node of the item node
    itemList.xmlRoot = xmlItems
    // The separation between subitems
    itemList.separation = separation
    // Tabulation between the subitems and the margin
    itemList
    .tabulation = tabulation
    // subItems auto close
    itemList.subItemAutoClose = subItemAutoClose
    // The subitems height
    itemList
    .itemHeight = itemHeight
    // The subitems width
    itemList.itemWidth = itemWidth
    // shows/hides the subitems light
    itemList
    .light = light
    // The subitems color
    itemList.buttonColor = buttonColor
    // The roll over color
    itemList
    .rollOverColor = rollOverColor
    // The arrow color
    itemList.arrowColor = arrowColor
    // the arrow color on roll over
    itemList
    .rollOverArrowColor = rollOverArrowColor
    // The text color
    itemList.TextColor = TextColor
    // The roll over text color
    itemList
    .rollOverText = rollOverText
    // the opening easing
    itemList.openEase = openEase
    // The closing easing
    itemList
    .closeEase = closeEase
    // The roll over fade speed
    itemList.rollOutFade = rollOutFade
    // open all
    itemList
    .openAll = openAll
    // ignore white
    xmlSource.ignoreWhite = true;
    // Loads the .xml file
    xmlSource.load("accordion.xml");
    // Aligning the items each one below the other
    this.onEnterFrame=function(){
    // Does the align to ALL the items
    for (i=1; i<total; i++){
    // Aligning the items
    itemList._y = itemList[i-1]._y +
    itemList[i-1].mask._height + itemList[i-1].button._height +
    separation
    // The cursor position
    cursor._x = _xmouse
    cursor._y = _ymouse
    // Opens the items
    onMouseDown = function (){
    // Does this to all the buttons
    for (i=0; i<total; i++){
    // If is clicked
    if (itemList
    .button.hitTest(cursor)){
    // Shows the current item
    showCurrent(itemList)
    // Shows the button clicked
    showCurrent=function(current){
    // Does this to all the buttons
    for (i=0; i<total; i++){
    // Does this to all the buttons exept the clicked
    if (itemList
    !=current){
    // Close the other items if autoclose = true
    if (autoClose){
    // Close the other items
    itemList.openBox=false
    // fades the roll over effect of the other items
    itemList
    .over = false
    //Does this to the clcked item only
    } else {
    // If it has sub items
    if (total>0){
    //Hides them if its open
    if (itemList.openBox){
    itemList
    .openBox=false
    //Shows them if its closed
    } else {
    itemList.openBox=true
    // If it has no subitems goes to the link
    } else {
    getURL(xmlRoot.attributes.url, _self)

    Please don't cross-post in multiple forums. I have answered
    this in your other thread.

  • What is vat where we add in sales order

    hi gurus
    what is vat how we add in sales order if we do for cin what are the steps
    is it order, delivery invoice, excise invoice
    va01,vl01n,vt01n,vf01, j1,IIn,
    is it correct or not
    thanks in advannce

    dear nag
    VAT is value added tax
    if you want steps for CIN gothrough this
    Basically CIN is divided in to two types:
    1. TAXINJ - Is a Routine Based that is used in the condition types. it will work on the logic what ever is there in the Routine.
    2. TAXINN: - Is a condition Record based. Means we have to create condition records for each and every condition type that you are going to use in the Pricing Procedure.
    Since Version 4.7 this TAXINN came into picture and start using this.
    And one of the important points is since 4.6 c CIN comes a separate package. But after introduction of 4.7 Version, CIN is coming the SAP Package itself and even in the Customer Master Record also we will find the CIN Icon.
    Basically 4 types of Pricing Procedures are used in CIN and are as follows:
    1.JDEPOT - Depot Sales
    2.JEXPOR - Export Sales
    3.JFACT - Factory Sales
    4.JSTKTR - Stock Transfer
    Country Version India comes with four pricing procedures as follows:
    • JINFAC (Sales from manufacturing plants)
    • JINEXP (Export sales)
    • JINDEP (Sales from depots)
    • JINSTK (Stock transfers
    CIN:
    IMG > Logistics - General > Tax on Goods Movement > India > Basic Settings >
    Maintain Excise Registrations
    Use
    In this IMG activity, you maintain the data relating to your excise registrations.
    Activities
    enter each of your excise registrations, specifying a four-character code for each
    Excise Registration IDs
    In this activity, you maintain excise registration IDs. You create one ID for each of your business's excise registrations.
    Activities
    For each excise registration in your business create a registration ID, and state:
    • Which taxes the registration covers (additional excise duty, special excise duty, and cess)
    Fields for any taxes that are not covered will be hidden in transactions involving excise duty.
    • The maximum number of items to be printed on each excise invoice
    • Whether you are allowed partial CENVAT credits
    Maintain Registration ID NUMBER, Excise code number, excise registration number
    Excise Registration Number
    A number assigned to each premises or location that has registered as a manufacturer with the excise authorities.
    Every entity with an excise registration number is required to keep its own excise books.
    ECC Number
    Specifies the organization's ECC number.
    Excise Registration Number
    A number assigned to each premises or location that has registered as a manufacturer with the excise authorities.
    Every entity with an excise registration number is required to keep its own excise books.
    Excise range: Specifies the excise range in whose area the excise registration is located.
    Excise Division
    Specifies the excise division in whose area the excise registration is located.
    Excise Collectorate
    The code of the excise collectorate in whose area the excise registration is located.
    Indicator for confirming AED usage
    Additional Excise duty Percentage. These are leviable under the additional duties of excise act. These duties are in addition to basic excise duty and special excise duty.
    Example
    Additional Excise duty is leviable in case of textile products, tobacco and sugar.
    Similarly for SED CESS
    Number of Items in Excise Invoice
    Shows the maximum number of line items that the authorities allow per excise invoice.
    Dependencies
    This information is used when you create an excise invoice in Sales and Distribution (SD) for factory sales and for other movements.
    This information is used to split the transfer postings' items into multiple subcontracting challans.
    Excise register set description
    Description of the excise registers set.
    Partial CENVAT Credit
    Indicates that the excise registration ID is allowed to credit only a portion of its input excise duty to its CENVAT account.
    Dependencies
    When you post a goods receipt, the system splits the input excise duty on the material into its deductible and nondeductible amounts. It posts the deductible duty to the appropriate CENVAT account, and adds the nondeductible duty to the material value.
    This information is also shown when you post the vendor's excise invoice.
    Maintain Company Code Settings
    Use
    In this IMG activity, you maintain the data relating to your company codes.
    Document Type for CENVAT Postings
    It controls, which document type the system uses when making CENVAT postings in Financial Accounting (FI). Here ED is document type for cenvat posting.
    Indicator for providing debit account overwriting
    Debit Account Overwrite Indicator. X - Indicates debit accounts can be overwritten. Use In excise journal voucher transaction. It provides the flexibility to the user to enter the debit account of his choice depending on the nature of transaction.
    Automatic balance Indicator
    Excise year start month
    The calendar month marking the beginning of the excise year
    Use
    this start month represents the month for the start of the excise invoice number range. The month 04 is entered here indicating April of the calendar year as the start month for excise invoices. Any change by the Excise authorities regarding start month should be taken care of by an entry in this field and initialization.
    Excise invoice selection procedure
    Excise invoice selection type. To indicate the method opted by the company for selecting the excise invoice. It can be either earliest or latest invoices that were received.
    Number of excise invoices to be selected
    indicates the number of excise invoices that needs to be selected in the excise invoice selection.
    Days to be considered for excise invoice selection
    Number of days from document date for excise invoice selection.
    Example
    If the value of this field is 20 and today is 28-03-97. The excise
    invoice selection will show the related invoices only for the
    period 08-03-97 to 28-03-97.
    Document type for TDS FI posting
    Financial accounting document type for TDS posting.
    Document type for FI posting on Utilization
    Financial accounting document type for TDS posting.
    Indicator for item level excise duty round off
    This indicator is to be used for deciding whether Item level excise duty amount rounding off is required during procurement cycle. If marked 'X' then the excise duty amount will be rounded off to the nearest rupee at the Purchase order level. This will not round off the CENVAT credit to be taken. If the duty amount is less than one rupee then no rounding is done
    Rounding off of Excise duty for outgoing excise invoice
    You can round off the Excise amount to be paid during an outgoing Excise invoice by marking this indicator as 'X'. The rounding is done at the item level for each item where the amount is greater than 1 Rupee.
    Immediate Credit on Capital Goods
    Instructs the system, when you verify a goods receipt for capital goods, to immediately post half of the input excise duty to the appropriate CENVAT accounts.
    The rest is posted the CENVAT on hold account, for use in the following year.
    CVD Clearing Account
    Specifies which G/L account the system credits when you take a CENVAT credit on countervailing duty in the Incoming Excise Invoices transaction.
    Exchange rate type
    Key representing a type of exchange rate in the system.
    Use
    You enter the exchange rate type to store different exchange rates.
    Example
    You can use the exchange rate type to define a buying rate, selling rate, or average rate for translating foreign currency amounts. You can use the average rate for the currency translation, and the bank buying and selling rates for valuation of foreign currency amounts.
    Exchange rate type to be used for Export excise duty converts
    When you are creating an Excise invoice for export sales then the exchange rate for duty calculation will be picked up using this Exchange rate type.
    Maintain Plant Settings
    Use
    In this IMG activity, you maintain excise information relating to your plants.
    Plant Settings
    In this activity, you maintain excise information relating to your plants.
    Activities
    For each plant:
    • Specify whether it is a manufacturing site or a depot.
    • Assign it an excise registration ID.
    You can assign the same ID to more than one plant, if required.
    Depot
    indicates that the plant in question is a depot.
    Dependencies
    Depots are required to prepare register RG 23D, and follow different procedures for goods receipt and invoice generation.
    Number of goods receipt per excise invoice.
    Multiple GR for one excise invoice, Single credit
    Multiple GR for one excise invoice, multiple credits
    Maintain Excise Groups
    Use
    In this IMG activity, you define your excise groups. For each excise group, you can also control how various excise invoice transactions will work.
    Excise Groups
    In this activity, you define excise groups. An excise group allows you to maintain a separate set of excise registers and excise accounts. The RG 23A, RG 23C and PLA serial numbers are created for an excise group.
    Recommendation
    Under normal circumstances, excise authorities require every business to maintain only one set of excise registers and one set of accounts. But through exemption from the authorities, multiple books can be maintained.
    If your company has only one set of excise registers, then you need to maintain only one excise group.
    Activities
    1. Create one excise group for each set of registers that you need to keep.
    1. Assign the excise groups to plants.
    2. Maintain whether this Excise group is for a depot or not.
    3. If you receive only one consignment for an Excise challan then you can leave GR's per EI as blank. If you receive multiple GR's for a given Excise challan and would like to avail multiple credit mark the GRs per EI as 'Multiple GR's for one excise invoice, multiple credit'. Alternatively if you want to avail the credit only after all the goods receipts have been made mark it as ' Multiple GR for one excise invoice, single credit'.
    4. If you want to automatically create Excise invoice during Sales cycle at the time of billing the tick the indicator 'Create EI'
    5. During depot sales if you do not want to do RG23D selection and posting separately and would like to complete RG23D selection in one step mark the indicator 'RG23D Auto post'. This will post the selected records into RG23D automatically. You cannot cancel the selection later.
    6. If the indicator 'Default GR qty' is marked system will default the Excise challan quantity on to the Goods receipt if the Excise invoice number is given in the pop-up.
    7. If the indicator 'Folio no creates' is marked system will generate Folio numbers for RG23D during receipt of excise invoice into depot.
    8. 'Automatic posting' when ticked will post the Excise invoice other movements automatically along with creation in single step.
    9. 'Create Part1 for Block Stock' when marked will create a Part1 during the receipt of material into Blocked stock.
    10. 'Create Part1 for STO' when marked will create a Part1 during the receipt of material through inter plant transfers.
    11. 'Create Part1 for consumption stock' when marked will create a Part1 during the receipt of material into consumption stock.
    Excise Group
    Governs which set of excise registers a business transaction will be included in.
    Following is the relation between excise group, plant and registration.
    Dependencies
    In define excise groups in Customizing.
    Then, in transactions involving excise duty, for example, when you post a vendor's excise invoice, you specify which excise group you are using. This information tells the system which G/L accounts to post the excise to.
    At the end of the period, when you come to prepare your excise registers, you create different sets for each excise group.
    Indicates that the plant in question is a depot.
    Dependencies
    Depots are required to prepare register RG 23D, and follow different procedures for goods receipt and invoice generation.
    GR Per Excise Invoice
    Multiple GR for one excise invoice , Multiple credit
    Multiple GR for one excise invoice , Single Credit
    Create Excise Invoice Automatically
    Instructs the system to automatically create a Sales and Distribution (SD) excise invoice immediately you create a commercial invoice or a pro forma invoice.
    The excise invoice is created in the background.
    Dependencies
    If you want to make use of this function, you must also define the default plant, excise group, and series groups in Customizing for Sales and Distribution (SD), by choosing Excise Group - Series Group Determination.
    RG23D Sales Creation and posting option
    RG23D Automatic Option if selected will create Depot excise invoice by posting the selection of excise invoices in single step.
    If this is not selected then you need to separately do RG23D selection followed by PGI and then RG23D verification and posting.
    If you need automatic posting of RG23D selection then the Post Goods Issue should have been completed before running RG23D selection.
    Default excise qty in GR
    If this indicator is ticked then while doing Goods Receipt using 'MB01' system will default the excise invoice quantity on to the Goods receipt document.
    Folio number for depo
    Posting
    If this indicator is marked then while creating Excise invoice for other movements system automatically does the Verify and Post. You need not separately Post the excise invoice
    Also we can set indicator for creation of part 1 for:
    Blocked stock
    Stock transport order
    Consignment stock
    Maintain Series Groups
    Use
    In this IMG activity, you define the different excise series groups within your company. Series groups allow you to maintain multiple number ranges for the outgoing excise documents.
    Based on excise regulations and exemptions from the authorities you can maintain multiple number series for outgoing documents. But each of these series has to be declared to the excise authorities.
    Activities
    • Define excise series groups based on type of outgoing document
    • Assign series group to excise registration ID
    • If no financial postings are required for an Excise invoice in this seris group then you tick the 'No utilization' indicator.
    • If the CENVAT has to be paid immediately and you need not wait for the Fort nightly payment then mark the 'Immediate Utilization' indicator.
    Example
    You could define two series groups, group 001 for excise invoices, and group 002 for 57 F4 documents.
    No account postings for CENVAT in sales cycle
    No utilization Flag
    If you do not need any CENVAT utilization for an excise invoice but would like to just generate an excise invoice then you need to mark this indicator.
    IF the flag is checked then system will create an Excise invoice in the given Series group but there will not be any account postings or Part2 postings.
    Immediate Utilization of CENVAT
    Specifies that when you create an excise invoice, the system immediately pays the amount from CENVAT and creates the Part II entry. Such invoices will not be listed for fortnightly utilization.
    If you have both fortnightly and immediate utilization for the same excise group, the account determination within CIN IMG should point to the ED interim account.
    Account determination for immediate payment will be done exactly the same as being done for fortnightly utilization program.
    Maintain Excise Duty Indicators
    Use
    In this IMG activity; you maintain the excise duty indicators.
    IMG > Logistics - General > Tax On Goods Movement > India > Basic Settings > Determination of Excise Duty >
    Select Tax Calculation Procedure
    Use
    In this IMG activity, you specify which tax procedure you want to use for determining excise duties and sales taxes on input materials in India.
    • If you use condition-based excise determination, use a copy of the tax procedure TAXINN.
    • If you use formula-based excise determination, use a copy of the tax procedure TAXINJ.
    This tax procedure also supports condition-based excise determination, so that you can work with both concurrently.
    We strongly recommend that new customers use condition-based excise determination. Note that once you have started using a tax procedure, you cannot switch to another one, otherwise you will not be able to display old documents.
    Maintain Excise Defaults
    Use
    In this IMG activity, you define which tax procedure and pricing condition types are used in calculating excise taxes using formula-based excise determination.
    Activities
    If you use condition-based excise determination, fill out the CVD cond. field and leave all the others blank.
    If you use formula-based excise determination, fill out all of the fields as follows:
    • Enter the tax procedure and the pricing conditions that are relevant for excise tax processing.
    • Specify the purchasing and sales conditions types used for basic excise duty, additional excise duty, special excise duty, and cess.
    • Specify the conditions in the sales order that are used for excise rates.
    • Specify the countervailing duty condition type used for import purchase orders.
    See also
    SAP Library -> Logistics -> Country Versions -> Asia-Pacific -> India -> Materials Management (MM) -> Condition-Based Excise Determination and -> Formula-Based Excise Determination.
    IMG > Logistics - General > Tax On Goods Movement > India > Basic Settings > Determination of Excise Duty >
    Condition-Based Excise Determination
    Use
    When you enter a purchasing document, for example, a purchase order, the R/3 System automatically calculates the applicable excise duties using the condition technique.
    Features
    The standard system comes with two tax calculation procedures. TAXINN is only supports condition-based excise determination, whereas TAXINJ supports condition-based excise determination and formula-based excise determination. Both tax procedures contain condition types that cover all of the excise duties and sales taxes applicable.
    Since the exact rates of excise duty can vary on a large number of factors, such as which vendor you purchase a material from, or which chapter ID the vendor stocks the material under, you create condition records for every sort of excise duty.
    When you come to enter a purchasing document, the system applies the excise duty at the rates you have entered in the condition records.
    Activities
    Customizing
    Make for Logistics – General, by&#61614;India &#61614;the settings in Customizing Basic Excise Duties Using&#61614;choosing Taxes on Goods Movements Account Settings Determination.&#61614;Condition Technique and …
    These activities include one activity where you define a tax code for condition-based excise determination.
    Master Data
    Create condition records for all excise duties that apply, and enter the tax code for condition-based excise determination in each.
    Day-to-Day Activities
    When you enter a purchase order or other purchasing document, enter the tax code for condition-based excise determination in each line item. The system then calculates the excise duties using the condition records you have created.
    When the ordered materials arrive, you post the goods receipt and the excise invoice. The system posts the excise duty to the appropriate accounts for deductible input taxes when you enter the excise invoice.
    Creating Condition Records for Excise Duty
    1. In the command field, enter FV11 and choose .
    2. Enter the condition type that you want to create a condition record for and choose .
    The Key Combination dialog box appears.
    3. Select the combination of objects that you want to create the condition record for.
    On the dialog box, Control Code means "chapter ID."
    So, for example, to create a condition record for a tax that applies to a combination of country, plant, and chapter ID, select Country/Plant/Control Code.
    4. Choose.
    5. Enter data as required.
    In the Tax Code field, enter the dummy tax code that you have defined.
    6. Save the condition record.
    Formula-Based Excise Determination
    Use
    When you execute a business transaction involving materials that are subject to excise duty, the system automatically calculates the duty for you.
    Prerequisites
    In order for the system to be able to determine which rate of excise duty to apply, you must have maintained all the data on the Excise Rate access from the SAP Easy&#61614;Maintenance screen, which you can Master Data&#61614;Access screen by choosing Indirect Taxes Excise Rate Maintenance.
    You maintain the following types of data:
    • Plant master data
    You assign each of your plants an excise duty indicator. You can use the same indicator for all the plants with the same excise status from a legal point of view, such as all those that are in an exempt zone.
    See also the information about manufacturers that are only entitled to deduct a certain portion of the duty (see Partial CENVAT Credit).
    • Vendor master data
    For each of your vendors with the same excise status from a legal perspective, you define an excise duty indicator. You must also specify the vendor type – for example, whether the vendor is a manufacturer, a depot, or a first-stage dealer. You must also stipulate if the vendor qualifies as a small-scale industry.
    For each permutation of plant indicator and vendor indicator, you then create a final excise duty indicator.
    • Customer master data
    similarly, you assign the same excise duty indicator to each of your customers that share the same legal excise status.
    Again, for each permutation of plant indicator and customer indicator, you then create a final excise duty indicator.
    • Material master data
    each material is assigned a chapter ID.
    • Excise tax rate
    For every chapter ID and final excise duty indicator, you maintain the rate of excise duty.
    If your business only qualifies for partial CENVAT credit, you must customize your system accordingly.
    Activities
    Let us consider an example to illustrate how the system determines which rate of excise duty to apply to a material. Assume you are posting a sale of ball bearings to a customer. The system automatically determines the rate of excise duty as follows:
    1. Looks up the customer master data to see what status you have assigned the customer.
    Let's assume you've assigned the customer status 3.
    2. Looks up the plant master data to see what status you have assigned the plant.
    Similarly, your plant has status 2.
    3. The system looks up the table under Excise Indicator for Plant and Customer to see what the final excise duty indictor is for customer status 3 and plant status 2: It is 7.
    4. The system determines the chapter ID of the ball bearing for the plant.
    Let’s assume the chapter ID at plant for the ball bearings is 1000.01.
    5. Finally, the system looks up the table under Excise Tax Rate to see what rate of duty applies to chapter ID 1000.01 under status 7.
    Define Tax Code for Purchasing Documents
    Use: In this IMG activity, you define a tax code for the purposes of calculating excise duty when you enter purchasing documents.
    Only carry out this activity if you use condition-based excise determination.
    Activities: Create a new tax code, and set the tax code type to V (input tax). Do not make any other settings for it.
    Assign Tax Code to Company Codes
    Use
    In this IMG activity, assign the tax code for purchasing documents to the company codes where it will be used.
    Only carry out this activity if you use condition-based excise determination.
    Classify Condition Types
    Use
    In this IMG activity, you specify which condition types you use for which sort of tax. Note that this only applies to condition types that you use with the new excise determination method.
    The system uses this information when you create a document from another one. For example, when you enter an incoming excise invoice from a purchase order, or when you create an outgoing excise invoice from a sales order, the system determines the various excise duties in the excise invoice using the information that you have entered here.
    In addition, when you create a purchasing document, the system only uses the condition types that you enter here.
    • For taxes on purchases, use the condition types contained in the tax procedure.
    • For taxes on sales, use the condition types contained in the pricing procedures.
    Standard settings
    The standard system comes with sample settings for the tax calculation procedures and pricing procedures.
    Use these settings as a basis for your own.
    IMG > Logistics - General > Tax on Goods Movement > India > Account Determination
    Define G/L Accounts for Taxes
    Use
    In this IMG activity, you specify which G/L accounts you will use to record which taxes.
    Requirements
    you have set up G/L accounts for each of the processing keys listed below.
    Activities
    Assign an account to each of the following posting keys. The accounts for VS1, VS2, and VS3 are used as clearing accounts during excise invoice verification.
    • VS1 (basic excise duty)
    • VS2 (additional excise duty)
    • VS3 (special excise duty)
    • VS5 (sales tax setoff)
    • MWS (central sales tax)
    • MW3 (local sales tax)
    • ESA (service tax)
    • ESE (service tax expense)
    Specify Excise Accounts per Excise Transaction
    Use
    In this IMG activity, you specify which excise accounts (for excise duty and CENVAT) are to be posted to for the various transaction types. Enter all the accounts that are affected by each transaction type.
    If you use sub transaction types, enter the accounts for each sub transaction type as well.
    Activities
    Transaction type UTLZ is used for determining accounts only while posting excise JVs and also if the payment of excise duty has to be done fortnightly.
    The fortnightly CENVAT payment utility picks up the credit side accounts from the transaction types of GRPO, EWPO, and TR6C for determining the CENVAT and PLA accounts. There is no separate transaction type for fortnightly payment.
    Example
    Excise TT DC ind Account name
    GRPO CR CENVAT clearing account
    GRPO CR RG 23 BED account
    GRPO DR CENVAT on hld account
    Specify G/L Accounts per Excise Transaction
    Use
    In this IMG activity, you assign the excise and CENVAT accounts to G/L accounts.
    When you come to execute the various transactions, the system determines which G/L accounts to post to by looking at the:
    • Excise group
    • Company code
    • Chart of accounts
    Furthermore, if you want separate account determination settings within an excise group, you can also use sub transaction types.
    Requirements
    You have already:
    • Defined the G/L accounts
    • Defined the excise groups
    • Maintained the transaction accounts
    Activities
    For each excise group, assign the excise and CENVAT accounts to G/L accounts. For most businesses, one set of accounts will suffice for all transactions.
    Note
    You need not remit the CENVAT to the excise department immediately, so maintain the credit account for transaction type DLFC as an excise duty interim account. This will be set off when you remit the duty.
    Config setting needed to be done in order to get the Excise Details Screen in Material Master.
    Even though this functionality is available in enterprise version, a small config step has to be made in Screen Sequences for Material Master.
    Following document helps you to do this configuration.
    Data&#61664; 1. Go to IMG Define Structure of&#61664;Logistics General  for&#61664;Material Master Configuring the Material master Screen Sequence.&#61664;Screen each
    2. Select your screen sequence. Usually it would be 21. Select the same and click on Data Screen in the left frame.
    3. Once the data screens are exhibited, select data screen no. 15, ie. SSq. 21and Scrn 15, which is “Foreign Trade: Import Data”. Select the same and click on Subscreens in the left frame.
    4. Go to the last sub screen i.e. 21-15-6 - SAPLMGD1- 0001 and select the same. Click on tab view subscreen and ensure that the subscreen is blank.
    5. Now in the last sub screen i.e. no.6 you delete SAPLMGD1 – 0001 and instead add SAPLJ1I_MATERIAL_MASTER and in the screen no. 2205.
    6. Save the setting.
    7. Create a Material Master and check whether in Screen Foreign Trade – Import, Excise related subscreen appears.
    Transaction
    Action
    J1I2
    Prepare a sales tax register
    J1I3
    Create outgoing excise invoices in batches
    J1I5
    Update the RG 1 and Part I registers
    J1IEX
    Incoming Excise Invoices (central transaction)
    J1IEX_C
    Capture an incoming excise invoice (excise clerk)
    J1IEX_P
    Post an incoming excise invoice (excise supervisor)
    J1IF01
    Create a subcontracting challan
    J1IF11
    Change a subcontracting challan
    J1IF12
    Display a subcontracting challan
    J1IF13
    Complete, reverse, or recredit a subcontracting challan
    J1IFQ
    Reconcile quantities for subcontracting challans
    J1IFR
    List subcontracting challans
    J1IH
    Make a CENVAT adjustment posting
    J1IIN
    Create an outgoing excise invoice
    J1IJ
    Assign excise invoices to a delivery for sales from depots
    J1INJV
    Adjust withholding tax Item
    J1INREP
    Reprint a withholding tax certificate for a vendor
    J1IQ
    Year-End Income Tax Depreciation Report
    J1IR
    Download register data
    J1IS
    Process an excise invoice (outgoing) for other movements
    J1IU
    Process exemption forms
    J1IW
    Verify and post an incoming excise invoice
    J1IX
    Create an incoming excise invoice (without reference to purchase order)
    J2I8
    Transfer excise duty to CENVAT account
    J2IU
    Remit excise duty fortnightly
    J2I9
    Monthly CENVAT return
    J1IG
    Excise invoice entry at depot
    J1IGA
    Create additional excise entry at depot
    J2I5
    Extract data for excise registers
    J2I6
    Print excise registers
    rewards if it helps
    siva

  • Manipulating matrix with XML

    Hi!
    I am implementing a form that looks and works like Frocasting in MRP. So, there are sometimes a lot of columns in matrix (more than 1000). I have to generate such matrix, put data there, read data. It will be like a self - made document in B1. The problem is that generating the columns, updating them an reading data is vee-e-ery slow when i use SDK objects. But the MRP Forcasting functionality in B1 works very fast. I suppose that B1 uses XML matrix manipulating. The question is - do someone have the info or maybe tools that will help me? Because generating XML strings "by hand" is very complex. And I'm a newbie in XML Do someone please can help me with the info?
    Regards,
    David

    Thank you Gianluigi!
    I was able to add Matrix & Columns via XML, but I cannot delete columns
    Could you please review my thread [here|Remove columns from Matrix using XML;.
    Respect,
    David

  • Creating AIR/Web Apps. with XML & E4X using AS3

    Needing tips using AS3 with XML/E4X to make my project work over the server:
    1) Here I'm having trouble trying to create a component with a 'GOOGLE MAP' with the user being able to input their location for directions with once submitting the get directions button that it generates the directions in the datagrid automatically.
    2) Including a 'DATAGRID'  for customers to be able to retain their info in a datagrid that has been updated by office personnel from an 'AIR APPLICATION' with a XML file that holds the customers info
    /**the Component*/
    <?xml version="1.0" encoding="utf-8"?>
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:s="library://ns.adobe.com/flex/spark" width="1400" backgroundColor="#666666" xmlns:mx2="library://ns.adobe.com/flex/mx" creationComplete="initApp(event)">
        <mx:Style source="map_1.css"/>
        <mx:XML id="customer_info.xml" source="Assets/customer_info.xml" />
    <mx:Script>
            <![CDATA[
                /**Google Map Code API:http://code.google.com/apis/maps/documentation/flash/tutorial-flexbuilder.html#DeclaringMa ps_&
                 _http://www.adobe.com/devnet/flex/articles/googlemaps_api.html */
                import com.google.maps.LatLng;
                import com.google.maps.Map;
                import com.google.maps.MapEvent;
                import com.google.maps.MapType;
                private function onMapReady(event:Event):void {
                        this.map.setCenter(new LatLng(31.683952973286058, -97.09904551506042), 14, MapType.NORMAL_MAP_TYPE);
                            click="processForm(event);"
                            private function processForm(event:Event):void { trace(from.text + " " + to.text); }
                [Bindable]
                    public var directionsSteps:ArrayCollection = new ArrayCollection();
                    dataProvider="{directionsSteps}"
                    var directions:Directions = new Directions(); directions.addEventListener(DirectionsEvent.DIRECTIONS_SUCCESS, onDirectionsSuccess);
                    directions.addEventListener(DirectionsEvent.DIRECTIONS_FAILURE, onDirectionsFail);directions.load("from: " + from.text + " to: " + to.text);
                    Alert.show("Status:" + event.directions.status);
                    map.clearOverlays(); var directions:Directions = event.directions; var directionsPolyline:IPolyline = directions.createPolyline(); map.addOverlay(directionsPolyline);
                                var directionsBounds:LatLngBounds = directionsPolyline.getLatLngBounds(); map.setCenter(directionsBounds.getCenter()); map.setZoom(map.getBoundsZoomLevel(directionsBounds));
                                var startLatLng:LatLng = dir.getRoute(0).getStep(0).latLng;
                                var endLatLng:LatLng = dir.getRoute(directions.numRoutes-1).endLatLng; map.addOverlay(new Marker(startLatLng)); map.addOverlay(new Marker(endLatLng));
                    for (var r:Number = 0 ; r < directions.numRoutes; r++ ) { var route:Route = directions.getRoute(r); for (var s:Number = 0 ; s < route.numSteps; s++ )
                    { var step:Step = route.getStep(s); directionsSteps.addItem(step);
                                    directionsSteps.removeAll();
                                    itemClick="onGridClick(event)"
                                    privatefunction onGridClick(event:Event):void { var latLng:LatLng = directionsGrid.selectedItem.latLng;
                                        var opts:InfoWindowOptions = new InfoWindowOptions(); opts.contentHTML = directionsGrid.selectedItem.descriptionHtml; map.openInfoWindow(latLng, opts);
                                        var ServerPath:String = "http://www.sometext.com/";
                                        var ServerPage:String = serverPath + "getCountries";
                                                dataProvider="{directionsSteps}"
                                                var directions:Directions = new Directions(); directions.addEventListener(DirectionsEvent.DIRECTIONS_SUCCESS, onDirectionsSuccess); directions.addEventListener(DirectionsEvent.DIRECTIONS_FAILURE, onDirectionsFail);
                                                directions.load("from: " + from.text + " to: " + to.text);
                                                Alert.show("Status:" + event.directions.status);
                                                map.clearOverlays(); var directions:Directions = event.directions; var directionsPolyline:IPolyline = directions.createPolyline();
                                                map.addOverlay(directionsPolyline);
                                                var directionsBounds:LatLngBounds = directionsPolyline.getLatLngBounds(); map.setCenter(directionsBounds.getCenter());
                                                map.setZoom(map.getBoundsZoomLevel(directionsBounds));
                                                var startLatLng:LatLng = dir.getRoute(0).getStep(0).latLng; var endLatLng:LatLng = dir.getRoute(directions.numRoutes-1).endLatLng; map.addOverlay(new Marker(startLatLng));
                                                map.addOverlay(new Marker(endLatLng));
                                                for (var r:Number = 0 ; r < directions.numRoutes; r++ ) { var route:Route = directions.getRoute(r); for (var s:Number = 0 ; s < route.numSteps; s++ )
                                                { var step:Step = route.getStep(s); directionsSteps.addItem(step); } }
                                                directionsSteps.removeAll();
                                                itemClick="onGridClick(event)"
                        import flash.events.IOErrorEvent;
                        import flash.events.SecurityErrorEvent;
                                    var sender:URLLoader;
                                    var sendPage:URLRequest;
                                    var sendVars:URLVariables;
                                         initApp;
                                        function initApp:void {
                                    var ServerPath:String = "http://localhost/silverfoxcc/";
                                    var url:String = serverPath + "login.aspx";
                                    sender = new URLLoader();
                                    sendPage = new URLRequest(url);
                                    sendPage.method = URLRequest.POST;
                                    sendvars = new URLVariables();
                                    SUBMIT.btn.addEventListener(MouseEvent.CLICK, clickHandler);
                                    sender.addEventListener(Event.COMPLETE, completeHandler);
                                    sender.addEventListener(IOErrorEvent.SECURITY_ERROR, securityErrorhandler);
                                                function clickhandler(e:MouseEvent:void{
                                                    var suppSUBMIT:String = username_txt.text;
                                                    var suppRESET:String = reset_txt.text;
                                                    if (suppSUBMIT.length > 0 && suppRESET.length > 0) {
                                                        message_txt.text = "";
                                                        sendVars.submit = suppSUBMIT;
                                                        sendVars.reset = suppRESET;
                                                        sendPage.data = sendVars;
                                                        sender.load(sendPage);
                                                    else{
                                                        message_txt.text ="You must enter a last name and customer identification before clicking the submit button."
                                                  function completeHandler(e:Event):void{
                                                      var xmlResponse:XML = XML(e.target.data;
                                                          var userMessage:String;
                                                          if (xmlResponse.text().toString() == "true") {
                                                              userMessage = "Congratulations, information is retrieved"'';
                                                          else {
                                                              usermessage = "Information to be retrieved failed. Please try again";
                                                                              message_txt.text =userMessage;
                                                                      function ioErrorHandler(e:IOErrorEvent):void{
                                                                          message_txt.text = e.text;
                                                                      function securityErrorHandler(e:SecurityErrorEvent):void {
                                                                          message_txt.text = e.text;
                                                             /**Foundation for Ed: XML & E4X-Chapter 9: COMMUNICATION WITH THE SERVER*/
                                                              import mx.events.FlexEvent;
                                                              import xmlUtilities.XMLLoader;
                                                              import flash.events.IOErrorEvent;
                                                              import flash.events.SecurityErrorEvent
                                                              private var serverPath:String = "http://localhost/FOE/";
                                                              private function initApp(e:FlexEvent):void {
                                                                  myXMLLoader = new XMLLoader();
                                                                  myXMLLoader.addEventListener(Event.COMPLETE, completeHandler);
                                                                  myXMLLoader.addEventListener(IOErrorEvent.IO_Error, IOErrorHandler);
                                                                  SUBMIT.btn.addEventListener(MouseEvent.CLICK, clickHandler);
                                                                          private function completeHandler(e:Event):void{
                                                                              var userMessage:String;
                                                                              var response:String =myXMLLoader.response().toString();
                                                                              if (response:String = myXMLLoader.response().toString();
                                                                                  if (response == true"){
                                                                                         usermessage = "Congratualtions. You were successful";
                                                                                              else{
                                                                                            userMessage = Login failed. Please try again";
                                                                                      message_txt.text = userMessage;
                                                                                  private function clickHandler(e:MouseEvent):void{
                                                                                      var SUBMIT:String = submit_txt.text;
                                                                                      var RESET:String = reset_txt.text;
                                                                                      vars myVars:URLVariables = new URLVariables();
                                                                                      if (username.length > 0 && password.length > 0) {
                                                                                          myVars.SUBMIT = submit;
                                                                                          myVars.CUSTMER ID = customerid;
                                                                                          myXMLLOADER.loafxml("login.aspx, myVars);
                                                                                            else {
                                                                                             message_txt.text = "You must enter a last name and customer id before clicking the submit button"
                                                                                  private function IOErrorHandler(e:IOErrorEvent):void{
                                                                                      message_txt.text = e.text;
                                                                                  private function securityErrorHandler(e:SecurityErrorEvent):void{
                                                                                      message_txt.text = e.text;
                                                                            /**Foundation for Ed: XML & E4X-Chapter 8: MODIFYING XML CONTENT WITH ACTIONSCRIPT 3.0*/
                                                                                import mx.events.FlexEvent;
                                                                                import mx.events.ListEvent;
                                                                                import mx.collections.XMLListCollection;
                                                                                import xmlUtilities.MyXMLLoaderHelper;
                                                                                import mx.events.FlexEvent;
                                                                                import mx.events.DataGridEvent;
                                                                                private function initApp(e:Event):void {
                                                                                /add testing lines here
                                                                                            private var myXMLLoader:MyXMLLoaderHelper;
                                                                                            private function initApp(e:FlexEvent):void {
                                                                                                 myXMLLoader = new MyXMLLoaderHelper();
                                                                                                 myXMLLoader.addEventListener(Event.COMPLETE, completeHandler);
                                                                                                 myXMLLoader.addEventListener("xmlUpdated", xmlUpdatedHandler);
                                                                                                 authors_cbo.addEventListener(ListEvent.CHANGE, changeHandler);
                                                                                                 addRow_btn.addEventListener(MouseEvent.CLICK, addClickHandler);
                                                                                                 delete_btn.addEventListener(MouseEvent.CLICK, deleteClickHandler);
                                                                                                 books_dg.addEventListener(DataGridEvent.ITEM_EDIT_END, itemEditEndHandler);
                                                                                                 authors_cbo.labelFunction = getFullName;
                                                                                                 myXMLLoader.loadXML("Assets/customer_info.xml", "lastname");
                                                                                            private function completeHandler(e:Event):void {
                                                                                                 authors_cbo.dataProvider = myXMLLoader.getChildElements("author");
                                                                                                 tree_txt.text = myXMLLoader.getXML().toXMLString();
                                                                                                 books_dg.dataProvider = myXMLLoader.getBooks(0);
                                                                                            private function getFullName(item:Object):String {
                                                                                              return item.authorFirstName + " " + item.customerLastName;
                                                                                            private function changeHandler(e:Event):void {
                                                                                                 books_dg.dataProvider = myXMLLoader.getBooks(e.target.selectedIndex);
                                                                                            private function addClickHandler(e:MouseEvent):void {
                                                                                              var newBookName:String = name_txt.text;
                                                                                              var newPublishYear:String = year_txt.text;
                                                                                              var newBookCost:String = cost_txt.text;
                                                                                              var authorIndex:int = authors_cbo.selectedIndex;
                                                                                              if(newBookName.length > 0 && newPublishYear.length > 0 && newBookCost.length > 0) {
                                                                                                 myXMLLoader.addBook(authorIndex, newBookName, newPublishYear, newBookCost);
                                                                                            private function deleteClickHandler(e:MouseEvent):void {
                                                                                              var bookIndex:int = books_dg.selectedIndex;
                                                                                              var authorIndex:int = authors_cbo.selectedIndex;;
                                                                                              if (books_dg.selectedIndex != -1) {
                                                                                                 myXMLLoader.deleteBook(authorIndex, bookIndex);
                                                                                            private function itemEditEndHandler(e:DataGridEvent):void {
                                                                                              var authorIndex:int = authors_cbo.selectedIndex;
                                                                                              var dg:DataGrid = e.target as DataGrid;
                                                                                              var field:String = e.dataField;
                                                                                              var row:int = e.rowIndex;
                                                                                              var col:int = e.columnIndex;
                                                                                              var oldVal:String = e.itemRenderer.data[field];
                                                                                              var newVal:String = dg.itemEditorInstance[dg.columns[col].editorDataField];
                                                                                              if (oldVal != newVal) {
                                                                                                   myXMLLoader.modifyXMLTree(authorIndex, dg.columns[col].dataField, row, newVal)
                                                                                            private function xmlUpdatedHandler(e:Event):void {
                                                                                                 books_dg.dataProvider = myXMLLoader.getBooks(authors_cbo.selectedIndex);
                                                                                                 tree_txt.text = myXMLLoader.getXML().toXMLString();
            ]]>
        </mx:Script>
        <s:Panel x="9" y="257" width="459" height="383" contentBackgroundColor="#666666" backgroundColor="#666666" chromeColor="#FCF6F6" title="DIRECTIONS TO SILVER FOX COLLISION CENTER:" fontSize="14">
            <s:TextInput x="55" y="7" contentBackgroundColor="#030000" height="17" width="392"/>
            <mx:Label x="3" y="6" text="FROM:" fontSize="14" color="#FDF9F9"/>
            <s:TextInput x="1114" y="637" contentBackgroundColor="#FCF7F7" height="17" width="213"/>
            <s:Button x="1337" y="634" label="GET DIRECTIONS" focusColor="#FBFCFD" chromeColor="#666666" color="#FEFEFE" width="141" fontSize="14"/>
            <mx:Label x="1088" y="637" text="TO:" fontSize="12" color="#FDFBFB"/>
            <s:Button x="295" y="56" label="GET DIRECTIONS" focusColor="#FBFCFD" chromeColor="#666666" color="#FEFEFE" width="157" fontSize="12"/>
            <s:TextInput x="55" y="31" contentBackgroundColor="#070000" height="17" width="392"/>
            <mx:Label x="25" y="30" text="TO:" fontSize="14" color="#FDFBFB"/>
        </s:Panel>
        <mx2:DataGrid x="10" y="54" width="458" height="104" color="#666666" contentBackgroundColor="#060000" borderColor="#030000" fontSize="8" focusColor="#666666" chromeColor="#030000" selectionColor="#666666" dropShadowVisible="true" rollOverColor="#FFFFFF">
            <mx2:columns>
                <mx2:DataGridColumn headerText="LAST NAME:" dataField="col1"/>
                <mx2:DataGridColumn headerText="DESIGNATED DUE DATE:" dataField="col2"/>
                <mx2:DataGridColumn headerText="STATUS UPDATED:" dataField="col3"/>
                <mx2:DataGridColumn headerText="CUSTOMER ID:" dataField="col3"/>
            </mx2:columns>
        </mx2:DataGrid>
        <mx:Text id="directionsSummary" width="100%"/> <mx:DataGrid id="directionsGrid" dataProvider="{directionsSteps}" width="100%" height="100%" sortableColumns="false" />
        <mx:Text id="directionsCopyright" width="100%"/>
        <mx:HBox> <mx:Label text="From: " width="70"/> <mx:TextInput id="from" text="San Francisco, CA" width="100%"/> </mx:HBox>
        <mx:HBox> <mx:Label text="To: " width="70"/> <mx:TextInput id="to" text="Mountain View, CA" width="100%"/> </mx:HBox>
        <s:Label x="11" y="38" text="LAST NAME:" color="#FCFBFB" fontSize="14" verticalAlign="top"/>
        <s:TextArea x="96" y="32" width="145" height="18" focusColor="#FCFAFA" color="#010000" contentBackgroundColor="#000000" id="message_txt" text="{xmlService.lastResult.toString()}>
        <s:Label x="273" y="37" text="CUSTOMER ID;" fontSize="14" color="#FDFBFB"/>
        <s:TextInput x="376" y="32" width="89" height="18" focusColor="#FCF9F9" color="#FAF8F8" contentBackgroundColor="#040000"/>
        <s:Button x="318" y="212" label="RESET" focusColor="#F8FAFB" color="#FEFBFB" chromeColor="#666666" fontSize="12"/>
        <s:Button x="393" y="212" label="SUBMIT" focusColor="#F8F9FA" color="#FFFBFB" chromeColor="#666666" fontSize="12"/>
        <s:TextArea x="10" y="160" width="458" height="48" color="#FEF8F8" contentBackgroundColor="#050000"/>
        <mx:Panel x="483" y="31" width="750" height="609" layout="absolute" backgroundColor="#666666" borderVisible="true" dropShadowVisible="true" chromeColor="#FDF9F9">
            <mx:VBox x="26" y="7" height="559" width="708">
                <maps:Map xmlns:maps="com.google.maps.*" id="map" mapevent_mapready="onMapReady(event)" x="500" y="25" width="700" height="550" key="ABQIAAAA9YXHa-b0xqHBMiooUNYUbhRpa9TAnukyOWjhoGl3Y9H2BJoi9xSrm6cnM0lBZ4lCtqRLxKpQK_eb Rg" sensor="true"/>
            </mx:VBox>
        </mx:Panel>
    </mx:Application>
    /**the AIR APPLICATION*/
    <?xml version="1.0" encoding="utf-8"?>
    <s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
                           xmlns:s="library://ns.adobe.com/flex/spark"
                           xmlns:mx="library://ns.adobe.com/flex/mx" backgroundColor="#666666" width="854" height="348" creationComplete="initApp(event)">
        <s:HTTPService id="customer_info" url="data/customer_info.xml" resultFormat="e4x" result="resultHandler(event)"/>
        <mx:Script>
            <![CDATA[
            /**FLEX 4 Bible: Chapter 24- Managing XML w/ E4X*/
            private var xmlData:XML;
            private function resultHandler(event:ResultEvent):void
                xmlData = event.result as XML:
            ]]>
        </mx:Script>
        <fx:Declarations>
            <!-- Place non-visual elements (e.g., services, value objects) here -->
        </fx:Declarations>
        <mx:Image source="@Embed('Assets/logo.png')" x="1" y="0" width="760" height="168"/>
        <s:Label x="96" y="126" text="Last Name:&#xd;" color="#FFFFFF" fontSize="20" fontFamily="Times New Roman"/>
        <s:Label x="13" y="218" text="Designated Due Date:&#xd;" fontSize="20" fontFamily="Times New Roman" color="#FBF8F8"/>
        <s:Label x="63" y="186" text="Status Updated:&#xd;" color="#FCF5F5" fontSize="20" fontFamily="Times New Roman"/>
        <s:TextInput x="192" y="125" width="196"/>
        <s:TextInput x="193" y="215" width="195"/>
        <s:TextInput x="193" y="185" width="195"/>
        <s:Label x="80" y="158" text="Customer ID:" color="#FDFCFC" fontSize="20" fontFamily="Times New Roman"/>
        <s:TextInput x="192" y="155" width="196"/>
        <s:Button x="243" y="241" label="RESET"/>
        <s:Button x="317" y="241" label="UPDATE" focusColor="#666666"/>
    </s:WindowedApplication>
    /**the Customer Information XML*/
    <?xml version="1.0" encoding="utf-8"?>
        <allNames>
            <name namesID="1">
                <nameLastName>Ambrose</nameLastName>
                <customerids>
                    <customerid customerID="1">
                        <customerID>777777</customerID>
                    </customerid>
                </customerids>

    Hi All,
    please note that we found the problem. The problem was that we didn't configure under:
    "Configuration-> Security -> Message Security -> SOAP" the voprrect provider to handle the security.
    After that was done (extract of domain.xml) the message was understood.
    <provider-config class-name="com.sun.identity.agents.jsr196.as9soap.AMServerAuthModule" provider-id="AMServerProvider-UserNameToken-Plain" provider-type="server">
                <request-policy auth-source="content"/>
                <response-policy auth-source="content"/>
                <property name="providername" value="UserNameToken-Plain"/>
              </provider-config>unfortunately the next problem occured I will post in a new thread.
    Edited by: rankin_ut on Jan 26, 2009 4:43 AM

  • Add carriage return in XML file

    Hi,
    I found a topic that correspond to my requirement :
    [Add carriage return in XML file|https://wiki.sdn.sap.com/wiki/display/XI/HowtoappendCarriageReturnintheendofeachtagofxml+file]
    But i don't know where created this udf, which input parameter pass?
    Thank you for your help.

    Hi Frantzy,
    The link does not give enough explanation. What I am assuming is if you have xml string in one field then if you need to add new line after each tag then you can follow that.
    If you want a udf where you want to insert a new line use this udf:
    Create a Value UDF with one input argument 'a' and name the udf as addnewline. Then add this code:
    Imports: java.*;
    String lines;
    lines = "";
    lines = lines.concat(a + '\n' );
    return lines;
    Then where ever you want a new line just add this udf in your mapping. If you want a new line for 10 fields then you can put in all the 10 fields.
    Example:
    Source field --> logic --> udf (addnewline) --> target.
    So after logic if you have the value as 123 then in the target you will see 123 followed by a carriage return.
    Regards,
    ---Satish

  • Populating a PDF form with XML data

    Hi folks,
    I would like to create some pdf form template, populate it with xml data and output from it a pdf file.
    Can I do such thing using LiveCycle?
    Yair

    With the recent release Adobe changed the name to Adobe Digitial Enterprise Platform (ADEP)..
    http://www.adobe.com/solutions/customer-experience/enterprise-platform.html
    ADEP server software comes with lot of services to help with many solutions for the enterprises, so it would be better to call the Adobe Sales team and discuss your needs and they will be best people to suggest what suits your company requirements.
    Thanks
    Srini

  • A few questions with XML and Flash

    Hi there.
    I am currently trying to create a 3d carousel using AS2 and XML.  I've made a lot of progress, but there ar e few things I am still struggling with and was hopoing that someone here could please steer me in the right direction.
    Here is a URL where the Carousel can be found:
    http://iongeo.com/ru_innovation_test_dev/carousel_test.html
    Here are a few of the things I am wondering:
    1.  I would like to be ablle to add a back button movide clip, similar to how the tooltip movie clip is presented now; this movie clip would be able to allow users to go back home to the caousel.  I can't seem to get it to load correctly however, I would imagine that it would be set up similarly to how the tooltip icon is set up now, but to be able to have an alpha of 100 when the text is loaded in.
    2.  I was also wondering how I mihgt be able to add links to my .xml document to be able to call in URLs on the web.  I've tried several things using the CDATA approach, but can't seem to get it to work.
    I would greatly appreciate any assistance privded and am very greatful for any consideration thac ould be provided.  Please let me know if there is anything htat I should clarify on.
    Below is my code for AS2 and XML so that you might see how things are currently working.
    import mx.utils.Delegate;
    import mx.transitions.Tween;
    import mx.transitions.easing.*;
    var numOfItems:Number;
    var radiusX:Number = 200;
    var radiusY:Number = 75;
    var centerX:Number = 300;
    var centerY:Number = 150;
    var speed:Number = 0.00;
    var perspective:Number = 20;
    var home:MovieClip = this;
    theText._alpha = 0;
    theHeader._alpha = 0;
    var tooltip:MovieClip = this.attachMovie("tooltip","tooltip",8000);
    tooltip._alpha = 0;
    var xml:XML = new XML();
    xml.ignoreWhite = true;
    xml.onLoad = function()
        var nodes = this.firstChild.childNodes;
        numOfItems = nodes.length;
        for(var i=0;i<numOfItems;i++)
            var t = home.attachMovie("item","item"+i,i+1);
            t.angle = i * ((Math.PI*2)/numOfItems);
            t.onEnterFrame = mover;
            t.toolText = nodes[i].attributes.tooltip;
            t.content = nodes[i].attributes.content;
            t.header = nodes[i].attributes.header;
            t.icon.inner.loadMovie(nodes[i].attributes.image);
            t.r.inner.loadMovie(nodes[i].attributes.image);
            t.icon.onRollOver = over;
            t.icon.onRollOut = out;
            t.icon.onRelease = released;
    function over()
        //BONUS Section
        home.tooltip.tipText.text = this._parent.toolText;
        home.tooltip._x = this._parent._x;
        home.tooltip._y = this._parent._y - this._parent._height/2;
        home.tooltip.onEnterFrame = Delegate.create(this,moveTip);
        home.tooltip._alpha = 100;
    function out()
        delete home.tooltip.onEnterFrame;
        home.tooltip._alpha = 0;
    function released()
        //BONUS Section
        home.tooltip._alpha = 100;
        for(var i=0;i<numOfItems;i++)
            var t:MovieClip = home["item"+i];
            t.xPos = t._x;
            t.yPos = t._y;
            t.theScale = t._xscale;
            delete t.icon.onRollOver;
            delete t.icon.onRollOut;
            delete t.icon.onRelease;
            delete t.onEnterFrame;
            if(t != this._parent)
                var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,0,1,true);
                var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,0,1,true);
                var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,100,0,1,true);
            else
                var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,100,1,true);
                var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,100,1,true);
                var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,100,1,true);
                var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,200,1,true);
                var tw5:Tween = new Tween(theText,"_alpha",Strong.easeOut,0,100,1,true);
                theText.text = t.content;
                var s:Object = this;
                tw.onMotionStopped = function()
                    s.onRelease = unReleased;
    function unReleased()
        var sou:Sound = new Sound();
        sou.attachSound("sdown");
        sou.start();
        delete this.onRelease;
        var tw:Tween = new Tween(theText,"_alpha",Strong.easeOut,100,0,0.5,true);
        for(var i=0;i<numOfItems;i++)
            var t:MovieClip = home["item"+i];
            if(t != this._parent)
                var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,0,t.theScale,1,true);
                var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,0,t.theScale,1,true);
                var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,0,100,1,true);
            else
                var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,100,t.theScale,1,true);
                var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,100,t.theScale,1,true);
                var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,t.xPos,1,true);
                var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,t.yPos,1,true);
                tw.onMotionStopped = function()
                    for(var i=0;i<numOfItems;i++)
                        var t:MovieClip = home["item"+i];
                        t.icon.onRollOver = Delegate.create(t.icon,over);
                        t.icon.onRollOut = Delegate.create(t.icon,out);
                        t.icon.onRelease = Delegate.create(t.icon,released);
                        t.onEnterFrame = mover;
    function moveTip()
        home.tooltip._x = this._parent._x;
        home.tooltip._y = this._parent._y - this._parent._height/2;
    xml.load("icons.xml");
    function mover()
        this._x = Math.cos(this.angle) * radiusX + centerX;
        this._y = Math.sin(this.angle) * radiusY + centerY;
        var s = (this._y - perspective) /(centerY+radiusY-perspective);
        this._xscale = this._yscale = s*100;
        this.angle += this._parent.speed;
        this.swapDepths(Math.round(this._xscale) + 100);
    this.onMouseMove = function()
        speed = (this._xmouse-centerX)/8000;
    // inactive mouse time (in seconds) to start slowing the carousel
    var inactiveMouseTime:Number =1;
    // rate of slowing carousel;
    var speedDamp:Number = .4;
    var speedI:Number;
    var startSlowTO:Number;
    this.onMouseMove = function(){
    clearInterval(speedI);
    clearTimeout(startSlowTO);
    startSlowTO = setTimeout(startSlowF,inactiveMouseTime);
        speed = (this._xmouse-centerX)/8000;
    function startSlowF(){
    clearInterval(speedI);
    speedI=setInterval(speedF,2000);
    function speedF(){
    speed = speedDamp*speed;
    if(speed<.1){
    clearInterval(speedI);
    speed=0;
    Here is an example of how things are loaded from XML:
    <icons>
    <icon image="Denver_test_icon.png" tooltip="Denver Icon Test" header="test header" content="Test Paragraph. Greeked:. Suspendisse condimentum sagittis luctus." />
    </icons>

    Hi there.
    I am currently trying to create a 3d carousel using AS2 and XML.  I've made a lot of progress, but there ar e few things I am still struggling with and was hopoing that someone here could please steer me in the right direction.
    Here is a URL where the Carousel can be found:
    http://iongeo.com/ru_innovation_test_dev/carousel_test.html
    Here are a few of the things I am wondering:
    1.  I would like to be ablle to add a back button movide clip, similar to how the tooltip movie clip is presented now; this movie clip would be able to allow users to go back home to the caousel.  I can't seem to get it to load correctly however, I would imagine that it would be set up similarly to how the tooltip icon is set up now, but to be able to have an alpha of 100 when the text is loaded in.
    2.  I was also wondering how I mihgt be able to add links to my .xml document to be able to call in URLs on the web.  I've tried several things using the CDATA approach, but can't seem to get it to work.
    I would greatly appreciate any assistance privded and am very greatful for any consideration thac ould be provided.  Please let me know if there is anything htat I should clarify on.
    Below is my code for AS2 and XML so that you might see how things are currently working.
    import mx.utils.Delegate;
    import mx.transitions.Tween;
    import mx.transitions.easing.*;
    var numOfItems:Number;
    var radiusX:Number = 200;
    var radiusY:Number = 75;
    var centerX:Number = 300;
    var centerY:Number = 150;
    var speed:Number = 0.00;
    var perspective:Number = 20;
    var home:MovieClip = this;
    theText._alpha = 0;
    theHeader._alpha = 0;
    var tooltip:MovieClip = this.attachMovie("tooltip","tooltip",8000);
    tooltip._alpha = 0;
    var xml:XML = new XML();
    xml.ignoreWhite = true;
    xml.onLoad = function()
        var nodes = this.firstChild.childNodes;
        numOfItems = nodes.length;
        for(var i=0;i<numOfItems;i++)
            var t = home.attachMovie("item","item"+i,i+1);
            t.angle = i * ((Math.PI*2)/numOfItems);
            t.onEnterFrame = mover;
            t.toolText = nodes[i].attributes.tooltip;
            t.content = nodes[i].attributes.content;
            t.header = nodes[i].attributes.header;
            t.icon.inner.loadMovie(nodes[i].attributes.image);
            t.r.inner.loadMovie(nodes[i].attributes.image);
            t.icon.onRollOver = over;
            t.icon.onRollOut = out;
            t.icon.onRelease = released;
    function over()
        //BONUS Section
        home.tooltip.tipText.text = this._parent.toolText;
        home.tooltip._x = this._parent._x;
        home.tooltip._y = this._parent._y - this._parent._height/2;
        home.tooltip.onEnterFrame = Delegate.create(this,moveTip);
        home.tooltip._alpha = 100;
    function out()
        delete home.tooltip.onEnterFrame;
        home.tooltip._alpha = 0;
    function released()
        //BONUS Section
        home.tooltip._alpha = 100;
        for(var i=0;i<numOfItems;i++)
            var t:MovieClip = home["item"+i];
            t.xPos = t._x;
            t.yPos = t._y;
            t.theScale = t._xscale;
            delete t.icon.onRollOver;
            delete t.icon.onRollOut;
            delete t.icon.onRelease;
            delete t.onEnterFrame;
            if(t != this._parent)
                var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,0,1,true);
                var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,0,1,true);
                var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,100,0,1,true);
            else
                var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,100,1,true);
                var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,100,1,true);
                var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,100,1,true);
                var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,200,1,true);
                var tw5:Tween = new Tween(theText,"_alpha",Strong.easeOut,0,100,1,true);
                theText.text = t.content;
                var s:Object = this;
                tw.onMotionStopped = function()
                    s.onRelease = unReleased;
    function unReleased()
        var sou:Sound = new Sound();
        sou.attachSound("sdown");
        sou.start();
        delete this.onRelease;
        var tw:Tween = new Tween(theText,"_alpha",Strong.easeOut,100,0,0.5,true);
        for(var i=0;i<numOfItems;i++)
            var t:MovieClip = home["item"+i];
            if(t != this._parent)
                var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,0,t.theScale,1,true);
                var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,0,t.theScale,1,true);
                var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,0,100,1,true);
            else
                var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,100,t.theScale,1,true);
                var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,100,t.theScale,1,true);
                var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,t.xPos,1,true);
                var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,t.yPos,1,true);
                tw.onMotionStopped = function()
                    for(var i=0;i<numOfItems;i++)
                        var t:MovieClip = home["item"+i];
                        t.icon.onRollOver = Delegate.create(t.icon,over);
                        t.icon.onRollOut = Delegate.create(t.icon,out);
                        t.icon.onRelease = Delegate.create(t.icon,released);
                        t.onEnterFrame = mover;
    function moveTip()
        home.tooltip._x = this._parent._x;
        home.tooltip._y = this._parent._y - this._parent._height/2;
    xml.load("icons.xml");
    function mover()
        this._x = Math.cos(this.angle) * radiusX + centerX;
        this._y = Math.sin(this.angle) * radiusY + centerY;
        var s = (this._y - perspective) /(centerY+radiusY-perspective);
        this._xscale = this._yscale = s*100;
        this.angle += this._parent.speed;
        this.swapDepths(Math.round(this._xscale) + 100);
    this.onMouseMove = function()
        speed = (this._xmouse-centerX)/8000;
    // inactive mouse time (in seconds) to start slowing the carousel
    var inactiveMouseTime:Number =1;
    // rate of slowing carousel;
    var speedDamp:Number = .4;
    var speedI:Number;
    var startSlowTO:Number;
    this.onMouseMove = function(){
    clearInterval(speedI);
    clearTimeout(startSlowTO);
    startSlowTO = setTimeout(startSlowF,inactiveMouseTime);
        speed = (this._xmouse-centerX)/8000;
    function startSlowF(){
    clearInterval(speedI);
    speedI=setInterval(speedF,2000);
    function speedF(){
    speed = speedDamp*speed;
    if(speed<.1){
    clearInterval(speedI);
    speed=0;
    Here is an example of how things are loaded from XML:
    <icons>
    <icon image="Denver_test_icon.png" tooltip="Denver Icon Test" header="test header" content="Test Paragraph. Greeked:. Suspendisse condimentum sagittis luctus." />
    </icons>

  • XmlDataProvider .... is gone completely in my Xaml file. Why? How many different ways to deal with xml data source through WPF

    I followed a procedure described in a book.
    1. insert "Inventory.xml" file to a project "WpfXmlDataBinding" .
    2. add the XML data source through the data panel of "blend for 2013", named it "InventoryXmlDataStore" and store it in the current document.
    3. dragged and droppped the nodes from the Data panel onto the artboard.
    Then I checked my Xaml file against the one provided by the book
    Xaml file by the book:
    <Window.Resources>
    <!-- This part is missing in my xaml file --><XmlDataProvider x:Key="InventoryDataSource"
    Source="\Inventory.xml"
    d:IsDataSource="True"/>
    <!-- This part is missing in my xaml file -->
    <DataTemplate x:Key="ProductTemplate">
    <StackPanel>
    <TextBlock Text="{Binding XPath=@ProductID}"/>
    <TextBlock Text="{Binding XPath=Cost}"/>
    <TextBlock Text="{Binding XPath=Description}"/>
    <CheckBox IsChecked="{Binding XPath=HotItem}"/>
    <TextBlock Text="{Binding XPath=Name}"/>
    </StackPanel>
    </DataTemplate>
    </Window.Resources>
    <Grid>
    <ListBox HorizontalAlignment="Left"
    ItemTemplate="{DynamicResource ProductTemplate}"
    ItemsSource="{Binding XPath=/Inventory/Product}"
    Margin="89,65,0,77" Width="200"/>
    </Grid>
    my Xaml file:
    <Window x:Class="WpfXmlDataBinding.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="922" Width="874">
    <Window.Resources>
    <DataTemplate x:Key="ProductTemplate">
    <StackPanel>
    <TextBlock Text="{Binding XPath=@ProductID}"/>
    <TextBlock Text="{Binding XPath=Cost}"/>
    <TextBlock Text="{Binding XPath=Description}"/>
    <CheckBox IsChecked="{Binding XPath=HotItem}"/>
    <TextBlock Text="{Binding XPath=Name}"/>
    </StackPanel>
    </DataTemplate>
    </Window.Resources>
    <Grid DataContext="{Binding Source={StaticResource InventoryXmlDataStore}}">
    <ListBox HorizontalAlignment="Left" Height="370"
    ItemTemplate="{DynamicResource ProductTemplate}"
    ItemsSource="{Binding XPath=/Inventory/Product}"
    Margin="65,55,0,0" VerticalAlignment="Top" Width="270"/>     
        </Grid>
    </Window>
    All looks quite the same except the <XmlDataProvider ....> part under <Window.Resources>, which is gone completely in my Xaml file.
    1, Why?
    2, How many different ways to deal with xml data source through WPF?
    Thanks, guys.
    (ps My "WpfXmlDataBinding" runs without problem through.)

    Never do yourself down Richard.
    Leave that to other people.
    It's quite common for smart developers to think they're not as good as they are.
    I coach a fair bit and it's a surprisingly common feeling.
    And to repeat.
    Never use anything ends .. provider.  They're for trivial demo apps.  Transform xml into objects and use them.  Write it back as xml.  Preferably, use a database.
    You want to read a little mvvm theory first.
    http://en.wikipedia.org/wiki/Model_View_ViewModel
    Whatever you do, don't read Josh Smiths explanation.  I used to recommend it but it confuses the heck out newbies. Leave that until later.
    Laurent Bugnion did a great presentation at mix10.  Unfortunately that doesn't seem to be working on the MS site, but I have a copy.  Download and watch:
    http://1drv.ms/1IYxl3z
    I'm writing an article at the moment which is aimed at beginners.
    http://social.technet.microsoft.com/wiki/contents/articles/30564.wpf-uneventful-mvvm.aspx
    The sample is just a collection of techniques really.
    I have a sample which involves no real data but is intended to illustrate some aspects of how viewmodels "do stuff" and how you use datatemplates to generate UI.
    I can't remember if I recommended it previously to you:
    https://gallery.technet.microsoft.com/WPF-Dialler-simulator-d782db17
    And I have working samples which are aimed at illustrating line of business architecture.  This is an incomplete step by step series but I  think more than enough to chew on once you've done the previous stuff.
    http://social.technet.microsoft.com/wiki/contents/articles/28209.wpf-entity-framework-mvvm-walk-through-1.aspx
    The write up for step2 is work in progress.
    https://gallery.technet.microsoft.com/WPF-Entity-Framework-MVVM-78cdc204
    Hope that helps.
    Recent Technet articles: Property List Editing;
    Dynamic XAML

  • Failed to Load database information - Crystal report with XML as datasource

    Hello Friends:
    I am getting the attached error when i try to load the Crystal Report with XML as data source.
    I have designed the crystal report with the sample XML provided with XSD schema (PFA I have attached the XML and XSD). It is working as expected on design time. But it is failing when I load it from C# code.
    Note: I have referred the following DLLs of version 13.0.2000.0 in my sample application.
    CrystalDecisions.CrystalReports.Design.dll
    CrystalDecisions.CrystalReports.Engine.dll
    Please let me know what should be done in order to resolve this.
    Thank you!

    All I know is that you are using 'SAP Crystal Reports, Developer Version for Visual Studio .NET". No idea what service pack or what version of .NET...
    So. make sure you are on SP 9:
    SAP Crystal Reports, developer version for Microsoft Visual Studio: Updates & Runtime Downloads
    Search for KBA 1525432 (search box is in top right corner) and follow the instructions there.
    Remove your reference to CrystalDecisions.CrystalReports.Design.dll
    Add the following references:
    CrystalDecisions.Shared
    CrystalDecisions.ReportSource
    CrystalDecisions.Web (if web app)
    CrystalDecisions.Windows (if win app)
    I'd also recommend commenting out the export code for now; one step at a time. Get it to work in the viewer, then move on... No Big Bangs
    - Ludek
    Senior Support Engineer AGS Product Support, Global Support Center Canada
    Follow us on Twitter

  • Invoice of sale with the PLD

    Hello, I am doing a form of invoice of sale with the PLD and I need to show the date of the delivery from which the invoice comes, this way as the date of the order from which the delivery comes.
    But at the moment of inserting it in the form, me the option does not appear to show it. who I can do to show this information that they find in a few documents different on that I want to stamp (Invoice of sale).
    Thank you very much.

    Hi Gonzalo Gonzalez,
    The Base Document Reference is stored in AR Invoice Row level ( INV1 table ). The reason behind is that an AR Invoice may be based on several Deliveries and different lines of items may be based on different documents.
    So if you want to display base Delivery Number on AR Invoice, please add database field AR Invoice - Rows -> Base Document Reference on AR Invoice PLD row level ( Repetitive Area ).
    Hope this helps.
    Regards, Summer
    SAP Business One Forums Team
    Edited by: Summer Ding on May 26, 2008 3:51 AM

  • How can I add links to open xml and csv files stored in another location? Please advice how to place links in my frame maker document?

    Hi,
    I would like to know as to how can I add links to open xml and csv files stored in another location? Please advice how to place links in my frame maker document?
    Kindly advice.
    Thanks
    Priya

    Special > Hypertext > Command "open document" will do its best to open the target document inside FrameMaker, which may not be much help; Special > Hypertext > Command "message …" will use the application you specify. The user guide for 7.0 says this about absolute links, and I don't think anything has changed since:
    For example, to start PaintBrush and open the Ship.pcx file on drive C you would use the command message system pbrush.exe C:/Ship.pcx
    I've not often used a relative link, and not recently: the same source says
    folder levels are separated by a slash / even in Windows and Mac
    [relative links] FrameMaker searches for a relative pathname beginning in the folder that contains the current document
    [absolute links] FrameMaker searches for an absolute pathname beginning at the top of the file system. In Windows, the absolute pathname begins with the drive specifier, a colon and a slash.

  • Generating layout with xml

    Hi,
    I want to make a graphical user interface with xml.
    Is that possible?
    For example:
    <?xml version="1.0" encoding="UTF-8" ?>
    <JMenubar>
    <JMenu name="Program">
    <JMenuItem name="Connect" method="Connect()" />
    </JMenu>
    </JMenubar>
    I automatically want to create these menu.
    But this xml could be more extended, and then the layout must also made automatically.
    The problem is, that you don't know how many JMenu's en JMenuItems there are.
    Anyone has an idea how to work with this?

    One way to do this is just to use XMLEncode & XMLDecode, so a nice example for you, to run this, first
    java Test -c test.xml
    It will ask some questions, fill 'em in.
    then
    java Test -l test.xml
    and it'll create a frame based on the XML file created by step one.
    import java.beans.*;
    import javax.swing.*;
    import java.io.*;
    class Test {
        public static void main(String argv[] ) throws Throwable{
         String file = "default.xml";
         JFrame frame;
         if( argv.length > 1 && argv[1] != null ) {
             file = argv[1];
         if( argv[0] != null && argv[0].equals( "-l" ) ) {
                    XMLDecoder d = new XMLDecoder
                     ( new BufferedInputStream
                    ( new FileInputStream( file ) ) );
                 frame = ( JFrame ) d.readObject();
                 frame.pack();
                 frame.show();
                 return;
         if( argv[0] != null && argv[0].equals( "-c" ) ) {
             System.out.println( "Frames Title:" );
             BufferedReader in = new BufferedReader
                ( new InputStreamReader ( System.in ) );
             String title = in.readLine();
             frame = new JFrame( title );
             frame.setDefaultCloseOperation( frame.EXIT_ON_CLOSE );
             System.out.println( "utton or [L]abel" );     
         String bOrl = in.readLine();
         System.out.println( "Objects Title: " );     
         title = in.readLine();
         bOrl = bOrl.toUpperCase();
         JComponent obj;
         if( bOrl.startsWith( "B" ) ) {
              obj = new JButton( title );
         } else {
              obj = new JLabel( title );
         frame.getContentPane().add( obj );
         System.out.println( "Number Of Menus" );
         String noS = in.readLine();
         int no = Integer.parseInt( noS );
         JMenuBar bobTheMenu = new JMenuBar();
         JMenu menu = new JMenu( "File" );
         bobTheMenu.add( menu );
         frame.setJMenuBar( bobTheMenu );
         for(int counter = 0; counter < no; counter++ ) {
              System.out.println( "MenuItem " + counter + " title: " );
              title = in.readLine();
              menu.add( new JMenuItem( title ) );
         System.out.println( "Saving" );
         XMLEncoder e = new XMLEncoder
         ( new BufferedOutputStream
         ( new FileOutputStream( file )));
         e.writeObject( frame );
         e.close();

  • Update a system form with XML: empty screen when this is a target document.

    Hi,
    It is possible to update a system form with an xml file.
    In the UI_Application.LoadBatchActions(xmlDoc). In the xmldocuemnt I update a system form by adding controls on it. This all works fine, except one (big) problem.
    Assume that I Alter the 'Good Receipt PO'.
    This document can be the target document of a Purchase order document. When you open a PO and click the icon on the toolbar for going to the target document, you see the target document filled in, in OK (view) mode.
    When you alter the 'Goods Receipt PO' form with XML you get an empty goods receipt form, in Add mode.
    Is this a known problem, how can I solve it?
    Thanks in advance
    Eddy

    Hi Florian,
    The XML looks like:
    <?xml version="1.0" encoding="UTF-16"?>
    <Application>
       <forms>
          <action type="update">
             <form AutoManaged="1" BorderStyle="0" FormType="143" ObjectType="20" SupportedModes="15" appformnumber="143" client_height="424" client_width="570" color="0" default_button="1" height="458" left="207" mode="3" pane="1" title="Goederenontvangst (bestelling)" top="23" type="0" uid="F_233" visible="1" width="578">
                <items>
                   <action type="add">
                      <item AffectsFormMode="1" backcolor="-1" description="" disp_desc="0" enabled="1" font_size="0" forecolor="-1" from_pane="0" height="19" left="434" linkto="" right_just="0" supp_zeros="0" tab_order="830" text_style="0" to_pane="0" top="398" type="4" uid="100001" visible="1" width="85">
                         <AutoManagedAttribute>
                            <Attribute description="editable" id="2" modeAdd="1"/>
                         </AutoManagedAttribute>
                         <specific caption="Container"/>
                      </item>
                   </action>
                   <action type="update">
                      <item AffectsFormMode="1" backcolor="-1" description="" disp_desc="0" enabled="1" font_size="0" forecolor="-1" from_pane="0" height="19" left="315" linkto="2" right_just="0" supp_zeros="0" tab_order="1160" text_style="0" to_pane="0" top="398" type="4" uid="68" visible="1" width="114">
                         <AutoManagedAttribute>
                            <Attribute description="editable" id="2" modeAdd="1"/>
                         </AutoManagedAttribute>
                         <specific caption="Voorfactuur"/>
                      </item>
                   </action>
                </items>
             </form>
          </action>
       </forms>
    </Application>
    Thank you very much for trying this.
    Eddy

  • Build a form with xml

    I recently was "volunteered" to build a new website for a local non-profit organization. I am fairly descent at building static sites(but brand new to dynamic), and I have run into an issue with a form area on the site. They have 3 training signup pages that are quite lengthy, and need updated regularly. The folks there are not exactly computer-savy so I am worried about them going into Dreamweaver and messing stuff up. I am trying to find a way to give them an easy way to update the form as necessary and save them the expense of hiring someone to update the list as needed. I have been doing some research on xml and spry to see if this would apply to forms. Can xml populate a form, with all needed checkboxes, and other info needed? The current site is build in html, with php form-to-mail attributes.
    Ideally I would want the form to auto-delete training dates that have already passed, add an easy admin function to add new content via xml, and retain the form to mail function. Here is the address of the page as it is right now: http://www.clickhappytesting.com/wcrTraining.html . Currently there are only like 20 or so items on the form, but there are usually like 100 per form.
    I am using DWcs4 so any help, or direction to where I could find help, or even an extension that would work would be GREATLY appreciated.
    Thank You,
    Shawn Lloyd

    Originally posted by: mirdous.seznam.cz
    Hi
    I do have same problem with EMF form based editor and source page. My
    Form page is working from EMF w/o problems but I do not know how to put
    xml editor to create source page to be in sync w/ model.
    Can you guys help me w/ this. Do you have any code anywhere or doc to
    follow so I'm able to get into it. Tnx
    Miro
    > Daniel Rohe wrote:
    > I'm currently experimenting with the EMF integration of the WST
    > (org.eclipse.wst.common.emf). So far I've got managed to load a self-defined
    > model through an implementation of the TranslatorResource and
    > TranslatorResourceFactory, these classes are also used by the JST components
    > in the plugin org.eclipse.jst.core. After finishing the model I want to do
    > the same step and create an editor with some form based pages and a single
    > source page. So I'm also interested in hearing something about synchronizing
    > EMF models and SSE editor.
    >
    > Regards
    > Daniel
    >
    > "Yang Liu" <[email protected]> schrieb im Newsbeitrag
    > news:65b2a87819b4d1f5b2d0ba8349e996db$[email protected]..
    >
    >>A question on EMF and SSE.
    >>
    >>I am trying to build a multipage web.xml editor. With both customized
    >>editor page (form based) and a source code page.
    >>
    >>For the source code page, I want to use the SSE xml editor. For the
    >>customized editor page, I want to use the EMF model for web.xml (there
    >>seemed to have all the EMF model artifacts there already in jst).
    >>
    >>The question I have is how to combine them together? Is there any existing
    >>implementation for this kind of usage or is there any plan? How to make
    >>the pages (and views) synchronized?
    >>
    >>Thanks and regards,
    >>yang
    >>
    >
    >
    >

Maybe you are looking for

  • Implementing Enhancement Spot

    Hi Experts,            I am looking for an exhancement (Function Exit / Badi ) which will should be trigegred when user presses SAVE button in PO .(Say me22n)            As I couldn't find suitable exit / badi....I thought of using the enhancement po

  • Configuring SOA in Jdeveloper 11g

    Hi, I am not able to configure SOA in jdeveloper 11g. I got the following error in the startsoa log file Jun 25, 2008 3:02:44 PM oracle.j2ee.xml.XMLMessages warningException WARNING: Exception Encountered Error in building SOA BUILD FAILED D:\Project

  • Reading the listi contents from Dbx

    There is one way I can save my optimization initiation with my product. Is there any simple way to associate the register variables to the actual local variables. In this scenario which values correspondes to "len" .... (dbx) n stopped in main (optim

  • Focus In Jframe

    I am trying to have a key listener inside a Jframe which will work no matter where the focus is, currently it only works when the focus is at certain locations. How can I do this, here is where I create the frame and components and attempt to get the

  • My iPhoto cannot import .mov-files

    I just bought a Mac mini and want to import all my pictures, stored at an external hard drive. Unfortunately iPhoto can't import the .mov files. At first it looks fine but next time I open iPhoto it says it has discovered pictures in the iPhoto libra