Exemplo n.º 1
0
        /// <summary>
        /// report the contents of the ResponseHeader.
        /// </summary>
        /// <returns></returns>
        public IEnumerable <string> ToColumnReport(string Title = null)
        {
            List <string> lines = new List <string>();

            if (Title != null)
            {
                lines.Add(Title);
            }

            {
                var lb = new BlankFillLineBuilder();
                lb.Append("Cursor row", 12);
                lb.Append("Cursor col", 12);
                lb.Append("AID key", 9);
                lines.Add(lb.ToString());
            }

            {
                var lb = new BlankFillLineBuilder();
                lb.Append(this.RowNum.ToString(), 12);
                lb.Append(this.ColNum.ToString(), 12);
                lb.Append(this.AidKey.ToString(), 9);
                lines.Add(lb.ToString());
            }

            return(lines);
        }
Exemplo n.º 2
0
        public static string[] PrintColumnHeading()
        {
            string line1 = null;
            string line2 = null;

            {
                var lb = new BlankFillLineBuilder();
                lb.Put("-- from --", 0);
                lb.Put("-- End ---", 33);
                line1 = lb.ToString();
            }

            {
                var lb = new BlankFillLineBuilder();
                lb.Put("Row", 0);
                lb.Put("Col", 5);
                lb.Put("ItemType", 10);
                lb.Put("Lgth", 20);
                lb.Put("dspatr", 26);
                lb.Put("Row", 33);
                lb.Put("Col", 38);
                lb.Put("Text", 43);
                lb.Put("FFW and FCW", 70);
                line2 = lb.ToString();
            }

            return(new string[] { line1, line2 });
        }
Exemplo n.º 3
0
        public string ToDetailLine()
        {
            var lb = new BlankFillLineBuilder();

            lb.Put(this.RowCol.RowNum.ToString().RightJustify(3), 0);
            lb.Put(this.RowCol.ColNum.ToString().RightJustify(3), 5);
            lb.Put(this.ItemType.ToString(), 10, 9);

            lb.Put(this.ItemLgth.NullEmptyString().RightJustify(4), 20);

            var daArray = this.AttrByte.ToColorDsplyAttr();

            lb.Put(daArray.ToText( ), 26);

            if (this.EndRowCol != null)
            {
                lb.Put(this.EndRowCol.RowNum.ToString().RightJustify(3), 33);
                lb.Put(this.EndRowCol.ColNum.ToString().RightJustify(3), 38);
            }

            lb.Put(this.ItemText.EmptyIfNull(), 43);
            if (this.ffw != null)
            {
                lb.Put(this.ffw.ToHex(' '), 70);
            }
            return(lb.ToString());
        }
Exemplo n.º 4
0
        public virtual string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder(2);

            lb.Append(this.ControlCode.ToString(), 20);

            return(lb.ToString());
        }
Exemplo n.º 5
0
        public new string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder();

            lb.Append(this.DataStreamLength.ToString(), 9);
            lb.Append(this.Marker.ToHex(), 10);

            return(lb.ToString());
        }
Exemplo n.º 6
0
        public static new string ToColumnReportHeaderLine()
        {
            var lb = new BlankFillLineBuilder();

            lb.Append("Response code", 13);
            lb.Append("System name", 11);
            lb.Append("Printer name", 12);
            return(lb.ToString());
        }
        public static string ToColumnReportHeaderLine()
        {
            var lb = new BlankFillLineBuilder(2);

            lb.Append("RcdLgth", 9);
            lb.Append("Marker", 8);
            lb.Append("StreamCode", 15);
            lb.Append("VarLgth", 7);
            return(lb.ToString());
        }
        public override string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder(2);

            lb.Append(this.ControlCode.ToString(), 20);
            lb.Append(this.TextBytes.Length.ToString( ) + "  " +
                      this.TextBytes.EbcdicBytesToString().Head(60), 60);

            return(lb.ToString());
        }
        public override string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder(2);

            lb.Append(this.ControlCode.ToString(), 20);
            lb.Append(this.NullBytes.Length.ToString( ), 20);
            lb.Append(this.NullBytes.ToHex(' ').Head(40), 40);

            return(lb.ToString());
        }
Exemplo n.º 10
0
        public new string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder();

            lb.Append(this.ResponseCode, 13);
            lb.Append(this.SystemName, 11);
            lb.Append(this.PrinterName, 12);

            return(lb.ToString());
        }
        public override string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder(2);

            lb.Append(this.ControlCode.ToString(), 15);
            lb.Append(this.Direction.ToString(), 15);
            lb.Append(this.PositionValue.ToString( ), 15);

            return(lb.ToString());
        }
Exemplo n.º 12
0
        public override string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder(2);

            lb.Append(this.ControlCode.ToString(), 20);
            lb.Append(this.ByteCount.ToString(), 20);
            lb.Append(this.ParmBytes.ToHex(' '), 20);

            return(lb.ToString());
        }
Exemplo n.º 13
0
        // todo tomorrow:
        // create showLiteralItem from RA order
        // complete the report of save screen response data screen.

        public string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder(2);

            lb.Append(this.DataStreamLength.ToString(), 9);
            lb.Append(this.Marker.ToHex(), 8);
            lb.Append(this.StreamCode.Value.ToString(), 15);
            lb.Append(this.VariableLength.ToString(), 7);

            return(lb.ToString());
        }
        public static string ToColumnReportHeaderLine( )
        {
            var lb = new BlankFillLineBuilder();

            lb.Append("RowNum", 8);
            lb.Append("ColNum", 8);
            lb.Append("AttrByte", 10);
            lb.Append("Length", 8);
            lb.Append("Text data", 30);
            return(lb.ToString());
        }
Exemplo n.º 15
0
        // todo tomorrow:
        // create showLiteralItem from RA order
        // complete the report of save screen response data screen.

        public new string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder(2);

            lb.Append(this.DataStreamLength.ToString(), 7);
            lb.Append(this.Marker.ToHex(), 6);
            lb.Append(this.StreamCode.Value.ToString(), 15);
            lb.Append(this.VariableLength.ToString(), 7);
            lb.Append(this.Flags.ToHex(), 6);
            lb.Append(this.OpcodeByte.ToHex() + " " + this.TerminalOpcode.ToString(), 10);

            return(lb.ToString());
        }
Exemplo n.º 16
0
        public static string[] PrintColumnHeading()
        {
            string line1 = null;

            {
                var lb = new BlankFillLineBuilder(2);
                lb.Append("FuncCode", 20);
                lb.Append("Parm1", 20);
                lb.Append("Parm2", 20);
                line1 = lb.ToString();
            }

            return(new string[] { line1 });
        }
        public string ToColumnReportLine()
        {
            var lb = new BlankFillLineBuilder();

            lb.Append("  " + SbaOrder.RowNum.ToString(), 8);
            lb.Append("  " + SbaOrder.ColNum.ToString(), 8);

            {
                string s1 = null;
                if (TextOrder.AttrByte == null)
                {
                    s1 = "";
                }
                else
                {
                    s1 = TextOrder.AttrByte.Value.ToHex();
                }
                lb.Append(s1, 10);
            }

            lb.Append(TextOrder.TextLength.ToString(), 8);
            lb.Append(TextOrder.PrintableText, 30);
            return(lb.ToString());
        }
Exemplo n.º 18
0
        public static IEnumerable <string> Print_WTD_Orders(this WriteToDisplayCommand wtdCmd)
        {
            var lines = new List <string>();
            var lb    = new BlankFillLineBuilder();
            var item  = new PrintItem();

            {
                var titleText = "5250 Write To Display Workstation Command Orders.";
                lines.Add(titleText.PadCenter(80));
                var chd = PrintColumnHeading();
                lines.AddRange(chd);
            }

            foreach (var order in wtdCmd.OrderList)
            {
                if (order is SetBufferAddressOrder)
                {
                    if (item.ItemType != null)
                    {
                        item = PrintAndAdvance(lines, item);
                    }

                    var sba = order as SetBufferAddressOrder;
                    item = new PrintItem(sba);
                    {
                        var item2 = new PrintItem(sba);
                        item2.ItemType = ReportItemType.sba;
                        PrintDetailLine(lines, item2);
                    }
                }

                else if (order is StartFieldOrder)
                {
                    item = CheckPrintItem(lines, item);
                    var sof = order as StartFieldOrder;
                    item.ItemType = ReportItemType.Field;
                    item.ItemLgth = sof.LL_Length;
                    item.AttrByte = sof.AttrByte;
                    item.ffw      = sof.FFW_Bytes.Concat(sof.FCW_Bytes);
                }

                else if (order is RepeatToAddressOrder)
                {
                    var ra = order as RepeatToAddressOrder;
                    item          = CheckPrintItem(lines, item);
                    item.ItemType = ReportItemType.RepeatToAddress;

                    // the length covered by the repeat order. From the current screen location
                    // to the row/col of the RA order.
                    item.ItemLgth = item.RowCol.DistanceInclusive(ra.RowCol);

                    item.ItemText = ra.RepeatPrintableChar;

                    item = PrintAndAdvance(lines, item);
                }

                else if (order is EraseToAddressOrder)
                {
                    var ea = order as EraseToAddressOrder;
                    item          = CheckPrintItem(lines, item);
                    item.ItemType = ReportItemType.EraseToAddress;

                    // the length covered by the repeat order. From the current screen location
                    // to the row/col of the EA order.
                    item.ItemLgth = item.RowCol.DistanceInclusive(ea.RowCol);

                    item.ItemText = ((string)"00 ").Repeat(item.ItemLgth.Value);

                    item = PrintAndAdvance(lines, item);
                }

                else if (order is TextDataOrder)
                {
                    var td = order as TextDataOrder;
                    {
                        var s1 = td.PrintableText;
                        if (s1 != null)
                        {
                            item.ItemText = s1;
                        }
                        if (item.AttrByte == null)
                        {
                            item.AttrByte = td.AttrByte;
                        }

                        if (item.ItemType == null)
                        {
                            if (td.DisplayText != null)
                            {
                                item.ItemLgth = td.TextLength;
                            }
                            item.ItemType = ReportItemType.Literal;
                        }
                    }
                    item = PrintAndAdvance(lines, item);
                }
                else if (order is CreateWindowStructuredField)
                {
                    var sfo = order as CreateWindowStructuredField;
                    item = CheckPrintItem(lines, item);
                    var sof = order as StartFieldOrder;
                    item.ItemType  = ReportItemType.CrtWdw;
                    item.WindowDim = new ScreenDim(sfo.NumRow, sfo.NumCol);
                    item           = PrintAndAdvance(lines, item);
                }
            }

            if (item.HasPrintableContent())
            {
                PrintAndAdvance(lines, item);
            }
            return(lines);
        }