Jump to content

dreimer

Registered Users - Approved
  • Posts

    524
  • Joined

Posts posted by dreimer

  1. So I attached another example of how three locations they would want on one line. Tried changing up your codes provided and can't seem to get anything to work. If I eliminate the two per requirement my biggest problem would be suppressing the pipe when not needed when the next store starts a new line. Maybe a table would work??? TIA

    ThreePerLine.pdf

  2. Wow, thanks for the codes Dan! Way less coding than what I was doing, but I figured there was an easier way. There actually is not a request to have just two stores per line, depending on the length of names they would like three per line but I had no idea on how to make that flow without possibly wrapping a phone number to a new line away for the store name.

     

    Is there a place where I can find out what all these things in the code are actually doing so I can understand them and try to learn to use this kind of coding?

     

    Thanks again. I will try these.

  3. So I have a rule using my main data linking to an external data source and the rule works the way I want but was wondering how I can clean it up. Basically the if statements are going through the data to decide which return function to use based on the last Store Number field populated. I have attached how the rule works with all 15 stores populated. I have included only a portion of the rule since it has too many characters. TIA

     

    var XDF = new ExternalDataFileEx("StoreList.csv", "\,");
    var a = XDF.FindRecord("Number", Field("Store1"));
    var b = XDF.FindRecord("Number", Field("Store2"));
    var c = XDF.FindRecord("Number", Field("Store3"));
    var d = XDF.FindRecord("Number", Field("Store4"));
    var e = XDF.FindRecord("Number", Field("Store5"));
    var f = XDF.FindRecord("Number", Field("Store6"));
    var g = XDF.FindRecord("Number", Field("Store7"));
    var h = XDF.FindRecord("Number", Field("Store8"));
    var i = XDF.FindRecord("Number", Field("Store9"));
    var j = XDF.FindRecord("Number", Field("Store10"));
    var k = XDF.FindRecord("Number", Field("Store11"));
    var l = XDF.FindRecord("Number", Field("Store12"));
    var m = XDF.FindRecord("Number", Field("Store13"));
    var n = XDF.FindRecord("Number", Field("Store14"));
    var o = XDF.FindRecord("Number", Field("Store15"));
    if ((Field("Store1") != "") && (Field("Store2") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6);
    }
    if ((Field("Store2") != "") && (Field("Store3") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6);
    }
    if ((Field("Store3") != "") && (Field("Store4") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6);
    }
    if ((Field("Store4") != "") && (Field("Store5") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(d, 1) + "</span>" + " " + XDF.GetFieldValue(d, 6);
    }
    if ((Field("Store5") != "") && (Field("Store6") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(d, 1) + "</span>" + " " + XDF.GetFieldValue(d, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(e, 1) + "</span>" + " " + XDF.GetFieldValue(e, 6);
    }
    if ((Field("Store6") != "") && (Field("Store7") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(d, 1) + "</span>" + " " + XDF.GetFieldValue(d, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(e, 1) + "</span>" + " " + XDF.GetFieldValue(e, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(f, 1) + "</span>" + " " + XDF.GetFieldValue(f, 6);
    }
    if ((Field("Store7") != "") && (Field("Store8") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(d, 1) + "</span>" + " " + XDF.GetFieldValue(d, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(e, 1) + "</span>" + " " + XDF.GetFieldValue(e, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(f, 1) + "</span>" + " " + XDF.GetFieldValue(f, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(g, 1) + "</span>" + " " + XDF.GetFieldValue(g, 6);
    }
    if ((Field("Store8") != "") && (Field("Store9") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(d, 1) + "</span>" + " " + XDF.GetFieldValue(d, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(e, 1) + "</span>" + " " + XDF.GetFieldValue(e, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(f, 1) + "</span>" + " " + XDF.GetFieldValue(f, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(g, 1) + "</span>" + " " + XDF.GetFieldValue(g, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(h, 1) + "</span>" + " " + XDF.GetFieldValue(h, 6);
    }
    if ((Field("Store9") != "") && (Field("Store10") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(d, 1) + "</span>" + " " + XDF.GetFieldValue(d, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(e, 1) + "</span>" + " " + XDF.GetFieldValue(e, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(f, 1) + "</span>" + " " + XDF.GetFieldValue(f, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(g, 1) + "</span>" + " " + XDF.GetFieldValue(g, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(h, 1) + "</span>" + " " + XDF.GetFieldValue(h, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(i, 1) + "</span>" + " " + XDF.GetFieldValue(i, 6);
    }
    if ((Field("Store10") != "") && (Field("Store11") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(d, 1) + "</span>" + " " + XDF.GetFieldValue(d, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(e, 1) + "</span>" + " " + XDF.GetFieldValue(e, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(f, 1) + "</span>" + " " + XDF.GetFieldValue(f, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(g, 1) + "</span>" + " " + XDF.GetFieldValue(g, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(h, 1) + "</span>" + " " + XDF.GetFieldValue(h, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(i, 1) + "</span>" + " " + XDF.GetFieldValue(i, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(j, 1) + "</span>" + " " + XDF.GetFieldValue(j, 6);
    }
    if ((Field("Store11") != "") && (Field("Store12") == ""))
    {
      return "<span>" + "<b>" + XDF.GetFieldValue(a, 1) + "</span>" + " " + XDF.GetFieldValue(a, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(b, 1) + "</span>" + " " + XDF.GetFieldValue(b, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(c, 1) + "</span>" + " " + XDF.GetFieldValue(c, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(d, 1) + "</span>" + " " + XDF.GetFieldValue(d, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(e, 1) + "</span>" + " " + XDF.GetFieldValue(e, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(f, 1) + "</span>" + " " + XDF.GetFieldValue(f, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(g, 1) + "</span>" + " " + XDF.GetFieldValue(g, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(h, 1) + "</span>" + " " + XDF.GetFieldValue(h, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(i, 1) + "</span>" + " " + XDF.GetFieldValue(i, 6)
      + " | " + "<span>" + "<b>" + XDF.GetFieldValue(j, 1) + "</span>" + " " + XDF.GetFieldValue(j, 6)
      + "<p>" + "<span>" + "<b>" + XDF.GetFieldValue(k, 1) + "</span>" + " " + XDF.GetFieldValue(k, 6);
    }

    Sample Output.pdf

  4. Maybe try something like this:

     

        var headerRow = myTable.AddRow();
       myTable.Rows[0].Cells[0].Font = "Arial";
       myTable.Rows[0].Cells[0].PointSize = 10;
       myTable.Rows[0].Cells[0].HAlign = "Center";
       myTable.Rows[0].Cells[0].SetBorders("Thin","Black","Bottom");
       myTable.Rows[0].Cells[0].Margins = new FPTableMargins;
       myTable.Rows[0].Cells[0].Margins.Top = 10;
       myTable.Rows[0].Cells[0].Margins.Bottom = 10;
       myTable.Rows[0].CopyCells(0,1,2);
       myTable.Rows[0].Cells[0].Content = "Name";
       myTable.Rows[0].Cells[1].Content = "Birth Date";
       myTable.Rows[0].Cells[2].Content = "Relationship";

     

    This is obviously from a table I have so if you don't need the font and border tags you could remove those.

  5. Not sure I really understand the end goal but have you tried using the SetBodyPageUsage in an OnRecordStart rule? Or are you looking for overflow pages? This will switch pages based on a field in your data to use whichever page your rule tells it to.

     

    For example:

     

    FusionPro.Composition.SetBodyPageUsage(Field("Version"), true); 

     

    This rule will switch pages in your template based on what is in your "Version" Field. You need to name your pages to what the value is in the "Version" field and make them unused.

×
×
  • Create New...