void IColumnMapping.ProcessMapping(int column, int rowNumber, ICdlRecord record, ICdlValueWriter writer, IShellContext context) { if (_value == null) { _value = new CdlValueHolder(); } if (Expression != null && Value != null) { throw new Exception("DBSH-00004 MapValue: Both Expression and Value is set"); } var childContext = context.CreateChildContext(); if (Value != null) { CreateColumnValues(record, childContext); string value = childContext.Replace(Value); _value.ReadFrom(value); _value.WriteTo(writer); } if (Expression != null) { CreateColumnValues(record, childContext); object value = childContext.Evaluate(Expression); _value.ReadFrom(value); _value.WriteTo(writer); } if (Expression == null && Value == null) { _value.SetNull(); _value.WriteTo(writer); } }
public CdlRow AddRow(ICdlRecord record) { var row = new CdlRow(this, new ArrayDataRecord(record), CdlRowState.Unchanged, m_structure); Rows.AddInternal(row); return(row); }
internal void SaveRecord(ICdlRecord rec) { long pos0 = Data.Length; CdlTool.SaveRecord(rec.FieldCount, rec, m_writer); Lengths.Add((int)(Data.Length - pos0)); }
public void PutRecord(ICdlRecord record) { object[] values = new object[record.FieldCount]; record.GetValues(values); ICdlRecord copy = new ArrayDataRecord(Format, values); m_queue.Put(new Element { Record = copy }); }
public void Write(ICdlRecord row) { if (_insertSeparatorAfterRows.HasValue && _rowsAfterSeparator > _insertSeparatorAfterRows.Value) { _stream.Write("GO\n"); _rowsAfterSeparator = 0; } var fmt = _factory.CreateLiteralFormatter(); _stream.Write("INSERT INTO [TABLE_NAME] ("); _stream.Write(row.GetFieldNames().Select(x => "[" + x + "]").CreateDelimitedText(", ")); _stream.Write(") VALUES ("); for (int i = 0; i < row.FieldCount; i++) { if (i > 0) { _stream.Write(", "); } row.ReadValue(i); fmt.ReadFrom(row); _stream.Write(fmt.GetText()); } _stream.Write(");\n"); _rowsAfterSeparator++; }
public void Write(ICdlRecord row) { WantTransaction(); var sb = new StringBuilder(); sb.AppendFormat("insert into {0} ({1}) values (", TABLE_NAME, ColumnsText); for (int i = 0; i < row.FieldCount; i++) { row.ReadValue(i); if (i > 0) { sb.Append(","); } sb.Append((int)row.GetFieldType()); sb.Append(","); string sqldata; StorageTool.GetValueAsSqlLiteral(row, out sqldata); sb.Append(sqldata); } sb.Append(")"); using (var inscmd = _conn.CreateCommand()) { inscmd.Transaction = _tran; inscmd.CommandText = sb.ToString().Replace("\0", "\\0"); inscmd.ExecuteNonQuery(); _rowCount++; } }
internal CdlRow(CdlTable table, ICdlRecord original, CdlRowState initialState, TableInfo structure) { m_table = table; m_fields = new FieldRec[m_table.Structure.Columns.Count]; m_original = original; m_structure = structure; RowState = initialState; }
public static string[] GetFieldNames(this ICdlRecord record) { string[] res = new string[record.FieldCount]; for (int i = 0; i < res.Length; i++) { res[i] = record.GetName(i); } return(res); }
public static object SafeGetValue(this ICdlRecord record, int ordinal) { if (ordinal < 0) { return(null); } record.ReadValue(ordinal); return(record.GetValue()); }
public static object[] GetValuesByCols(this ICdlRecord record, int[] cols) { object[] values = new object[cols.Length]; for (int i = 0; i < cols.Length; i++) { values[i] = record.GetValue(cols[i]); } return(values); }
private void CreateColumnValues(ICdlRecord record, IShellContext context) { if (NeedColumnValues) { context.CreateScope(); for (int i = 0; i < record.FieldCount; i++) { context.SetVariable(record.GetName(i), record.GetValue(i)); } } }
public void Write(ICdlRecord row) { _orec.Clear(); for (int i = 0; i < row.FieldCount; i++) { row.ReadValue(i); _formatter.ReadFrom(row); _orec[i] = _formatter.GetText(); } _dbf.Write(_orec); }
public void Write(ICdlRecord row) { var dataRow = new object[row.FieldCount]; _rows.Add(dataRow); for (int i = 0; i < row.FieldCount; i++) { row.ReadValue(i); _formatter.ReadFrom(row); dataRow[i] = _formatter.GetText(); } }
public ArrayDataRecord(ICdlRecord record, int[] colindexes, TableInfo changedStructure) { if (colindexes.Length != changedStructure.Columns.Count) throw new InternalError("DBSH-00050 ArrayDataRecord(): colnames.count != colindexes.count"); _values = new object[colindexes.Length]; for (int i = 0; i < colindexes.Length; i++) { if (colindexes[i] >= 0) { _values[i] = record.GetValue(colindexes[i]); } } _structure = changedStructure; }
public static object[] GetValuesByCols(this ICdlRecord record, DmlfColumnRef[] cols, DmlfResultFieldCollection result) { if (result == null) { return(record.GetValuesByCols(cols.GetNames())); } object[] values = new object[cols.Length]; for (int i = 0; i < cols.Length; i++) { int index = result.GetColumnIndex(cols[i]); values[i] = record.GetValue(index); } return(values); }
void ICdlWriter.Write(ICdlRecord row) { if (_dataRecord == null) { _dataRecord = new string[row.FieldCount]; } for (int i = 0; i < _dataRecord.Length; i++) { row.ReadValue(i); _formatter.ReadFrom(row); _dataRecord[i] = _formatter.GetText(); } WriteRow(_dataRecord); }
public static void SaveRecord(int fldcount, ICdlRecord record, BinaryWriter stream) { var fw = new StreamValueWriter(stream); if (fldcount != record.FieldCount) { throw new InternalError("DBSH-00034 field count mitchmatch"); } for (int i = 0; i < fldcount; i++) { record.ReadValue(i); fw.ReadFrom(record); } }
public void Write(ICdlRecord row) { var fmt = _factory.CreateLiteralFormatter(); _stream.Write("INSERT INTO [TABLE_NAME] ("); _stream.Write(row.GetFieldNames().Select(x => "[" + x + "]").CreateDelimitedText(", ")); _stream.Write(") VALUES ("); for (int i = 0; i < row.FieldCount; i++) { if (i > 0) _stream.Write(", "); row.ReadValue(i); fmt.ReadFrom(row); _stream.Write(fmt.GetText()); } _stream.Write(");\n"); }
public ICdlRecord AdaptRecord(ICdlRecord record) { var res = new ArrayDataRecord(record.Structure); for (int i = 0; i < Math.Min(res.FieldCount, record.FieldCount); i++) { var targetColumn = _columnMap.GetTargetColumnBySourceIndex(i); if (targetColumn == null) continue; record.ReadValue(i); res.SeekValue(i); _dda.AdaptValue(record, targetColumn.CommonType, res, _outputConv); } return res; }
public void Write(ICdlRecord row) { if (_currentChunk == null) { _currentChunk = new Chunk(); } _currentChunk.SaveRecord(row); if (_currentChunk.Count >= BUFFER_SIZE) { FlushChunk(_currentChunk); _currentChunk = null; } }
public ArrayDataRecord(ICdlRecord record, int[] colindexes, TableInfo changedStructure) { if (colindexes.Length != changedStructure.Columns.Count) { throw new InternalError("DBSH-00050 ArrayDataRecord(): colnames.count != colindexes.count"); } _values = new object[colindexes.Length]; for (int i = 0; i < colindexes.Length; i++) { if (colindexes[i] >= 0) { _values[i] = record.GetValue(colindexes[i]); } } _structure = changedStructure; }
public ICdlRecord AdaptRecord(ICdlRecord record) { var res = new ArrayDataRecord(record.Structure); for (int i = 0; i < Math.Min(res.FieldCount, record.FieldCount); i++) { var targetColumn = _columnMap.GetTargetColumnBySourceIndex(i); if (targetColumn == null) { continue; } record.ReadValue(i); res.SeekValue(i); _dda.AdaptValue(record, targetColumn.CommonType, res, _outputConv); } return(res); }
public ICdlRecord GetRecord() { try { Element res = m_queue.Get(); if (res.IsEof) { throw new Exception("DBSH-00009 Eof reached"); } ICdlRecord rec = res.Record; return(rec); } catch (QueueClosedError) { if (m_error != null) { throw new QueueClosedError("DBSH-00010", m_error); } throw new QueueClosedError("DBSH-00011"); } }
public void Write(ICdlRecord row) { _writer.WriteStartElement(_rowElementName ?? "Row"); for (int i = 0; i < row.FieldCount; i++) { string name = row.GetName(i); row.ReadValue(i); _formatter.ReadFrom(row); string value = _formatter.GetText(); if (_useAttributes) { _writer.WriteAttributeString(name, value); } else { _writer.WriteStartElement(name); _writer.WriteString(value); _writer.WriteEndElement(); } } _writer.WriteEndElement(); }
public ArrayDataRecord(ICdlRecord record) { _values = new object[record.FieldCount]; _structure = record.Structure; record.GetValues(_values); }
void IColumnMapping.ProcessMapping(int column, int rowNumber, ICdlRecord record, ICdlValueWriter writer, IShellContext context) { record.ReadValue(record.GetOrdinal(Name)); record.WriteTo(writer); }
public void Write(ICdlRecord row) { _queue.PutRecord(row); }
public static object[] GetValues(this ICdlRecord record) { object[] values = new object[record.FieldCount]; record.GetValues(values); return(values); }
public static object GetValue(this ICdlRecord record, string colName) { return(record.GetValue(record.GetOrdinal(colName))); }
void IColumnMapping.ProcessMapping(int column, int rowNumber, ICdlRecord record, ICdlValueWriter writer, IShellContext context) { writer.SetNull(); }
public void Write(ICdlRecord row) { _bw.Write(false); CdlTool.SaveRecord(row.FieldCount, row, _bw); }
internal void SaveRecord(ICdlRecord rec) { long pos0 = Data.Length; CdlTool.SaveRecord(rec.FieldCount, rec, m_writer); Lengths.Add((int) (Data.Length - pos0)); }
public void Write(ICdlRecord row) { _stream.Write("<tr>"); for (int i = 0; i < row.FieldCount; i++) { row.ReadValue(i); _formatter.ReadFrom(row); string value = _formatter.GetText(); _stream.WriteLine("<td>{0}</td>", HttpUtility.HtmlEncode(value)); } _stream.Write("</tr>"); }
public DataRowModel(ICdlRecord record) { _record = record; }
void IColumnMapping.ProcessMapping(int column, int rowNumber, ICdlRecord record, ICdlValueWriter writer, IShellContext context) { writer.SetInt32(StartFrom + rowNumber); }
public void Write(ICdlRecord row) { WantTransaction(); var sb = new StringBuilder(); sb.AppendFormat("insert into {0} ({1}) values (", TABLE_NAME, ColumnsText); for (int i = 0; i < row.FieldCount; i++) { row.ReadValue(i); if (i > 0) sb.Append(","); sb.Append((int)row.GetFieldType()); sb.Append(","); string sqldata; StorageTool.GetValueAsSqlLiteral(row, out sqldata); sb.Append(sqldata); } sb.Append(")"); using (var inscmd = _conn.CreateCommand()) { inscmd.Transaction = _tran; inscmd.CommandText = sb.ToString().Replace("\0", "\\0"); inscmd.ExecuteNonQuery(); _rowCount++; } }
public static object GetValue(this ICdlRecord record, int ordinal) { record.ReadValue(ordinal); return(record.GetValue()); }
public static void SaveRecord(int fldcount, ICdlRecord record, BinaryWriter stream) { var fw = new StreamValueWriter(stream); if (fldcount != record.FieldCount) throw new InternalError("DBSH-00034 field count mitchmatch"); for (int i = 0; i < fldcount; i++) { record.ReadValue(i); fw.ReadFrom(record); } }