public virtual ByteArrayBuffer BufferByID(DbSelector selector , int id) { var slot = CommittedSlot(selector, id); return(BufferByAddress(selector, slot.Address(), slot.Length())); }
public virtual int DatabaseIdentityID(DbSelector selector) { var db = selector.Db(this); var identity = db.Identity(); if (identity == null) { return(0); } return(identity.GetID(selector.Transaction(this))); }
public virtual IStoredClass[] StoredClasses(DbSelector selector ) { var db = selector.Db(this); db.ShowInternalClasses(true); try { return(db.ClassCollection().StoredClasses()); } finally { db.ShowInternalClasses(false); } }
public ActionResult <bool> GenericPut(string typename, int id, [FromBody] JObject post) { Type type = null; try { type = GetTypeCaseInsensitive($"DatabaseWebService.DatabaseObjects.{typename}"); if (type == null) { throw new Exception($"The requested datatype {typename} doesnt exist."); } DbSelector.Update(id, post.ToObject(type)); return(true); } catch (TargetException) { var text = type.GetProperties().Aggregate("Supplied a faulty object to the Server. The expected Structure is:\n", (current, prop) => current + $"{prop.Name} : {prop.PropertyType.Name}\n"); throw new Exception(text); } }
public ActionResult <List <object> > GetAdmin(string typename) { List <object> output; Type type = null; try { type = GetTypeCaseInsensitive($"DatabaseWebService.DatabaseObjects.{typename}"); if (type == null) { throw new Exception($"The requested datatype {typename} doesnt exist."); } var instance = Activator.CreateInstance(type); foreach (var(key, value) in Request.Query) { var prop = type.GetProperties().FirstOrDefault(p => p.Name.ToLower().Equals(key.ToLower())); if (prop == null) { continue; } SetValue(prop, instance, value); } output = DbSelector.MatchTemplate(instance); } catch (TargetException) { var text = type.GetProperties().Aggregate("Supplied a faulty object to the Server. The expected Structure is:\n", (current, prop) => current + $"{prop.Name} : {prop.PropertyType.Name}\n"); throw new Exception(text); } return(output); }
private void Form1_Load(object sender, EventArgs e) { #if !DEBUG // TopMost = true; fonctionne pas :( SetWindowPos(this.Handle, HWND_TOPMOST, 0, 0, 0, 0, TOPMOST_FLAGS); #endif try { string[] args = Environment.GetCommandLineArgs(); if (args.Length < 3) { throw new Exception("Nombre d'argument insuffisant"); } doPiece = args[3]; BaseCialAbstract.setDefaultParams(args[1], args[2]); InterMagRepos = new InterMagRepository(); InterMagRepos.Log += new InterMagRepository.LogEventHandler(Log); Text = label1.Text = "Envoi de la commande " + doPiece; DbSelector.DataSource = InterMagRepos.getDbListFromContext().Where(d => d.name != InterMagRepos.dbName && d.isMag == true).ToList(); DbSelector.DisplayMember = "name"; DbSelector.ValueMember = "name"; // Récupère la commande Log("Vérification de la commande..."); dsCde = InterMagRepos.getCommande(doPiece); string message = InterMagRepos.valideCommande(dsCde.Tables[0]); if (message != String.Empty) { Log($"{InterMagRepos.dbName}::Erreur Doc {doPiece} : {message}"); } else { Log("Commande OK."); EnvoyerBtn.Enabled = true; DbSelector.Enabled = true; typeCde = InterMagRepos.getTypeCde(dsCde); if (typeCde == InterMagRepository.TYPE_DEPOT) { // Auto selectionne le magasin cible sur une commande dépot DbSelector.SelectedIndex = DbSelector.FindString((string)dsCde.Tables[0].Rows[0]["CT_Classement"]); DbSelector.Enabled = false; } typeCdelabel.Text = InterMagRepos.typeCdeLabels[typeCde]; string MagRef = (string)dsCde.Tables[0].Rows[0]["magasin_referent"]; MagReflabel.Text = ""; if (typeCde == InterMagRepository.TYPE_RETRO && MagRef != "") { // Auto selectionne le magasin cible sur une commande rétro MagReflabel.Text = (string)dsCde.Tables[0].Rows[0]["magasin_referent"]; #if DEBUG MagRef += "DEV"; #endif DbSelector.SelectedIndex = DbSelector.FindString(MagRef); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
//Remove a SINGLE Viewer Windows data from Flags & gv[] public static bool DeleteViewerAndFlags(int index = -1, string currentDb = "") { int x = index; SqlDbViewer sqlv; // x = GridView[] index if received if (Flags.CurrentSqlViewer == null) { return(false); } Guid tag = ( Guid )Flags.CurrentSqlViewer?.Tag; ListBoxItem lbi = new ListBoxItem( ); if (x == -1) { // Delete all for (int z = 0; z < MainWindow.gv.MaxViewers; z++) { DbSelector.UpdateControlFlags(null, null, MainWindow.gv.PrettyDetails); MainWindow.gv.CurrentDb [z] = ""; MainWindow.gv.ListBoxId [z] = Guid.Empty; MainWindow.gv.Datagrid [z] = null; MainWindow.gv.window [z] = null; } MainWindow.gv.ViewerCount = 0; MainWindow.gv.PrettyDetails = ""; MainWindow.gv.SqlBankViewer = null; MainWindow.gv.SqlCustViewer = null; MainWindow.gv.SqlDetViewer = null; MainWindow.gv.SqlViewerGuid = Guid.Empty; MainWindow.gv.SqlViewerWindow = null; MainWindow.gv.Bankviewer = Guid.Empty; MainWindow.gv.Custviewer = Guid.Empty; MainWindow.gv.Detviewer = Guid.Empty; Flags.ActiveSqlGrid = null; Flags.SqlBankViewer = null; Flags.SqlCustViewer = null; Flags.SqlDetViewer = null; // Flags . CurrentSqlViewer = null; // ALL entries in our GridView structure are now cleared ** totally ** return(true); } else { int GridViewerArrayIndex = 0; // we may have NOT received the index of the viewer in the list // so get the index for the correct Entry if (x == 99) { // got to find it ourselves - iterate thruMainWindow.gv[] array (Range is 0 - 3) for (int i = 0; i < 3; i++) { if (MainWindow.gv.CurrentDb [i] == currentDb) { x = i; break; } } GridViewerArrayIndex = x; // we have got the index in "x" of the viewer in the Mainindow.gv[] array // so get the Tag of that selected Entry vin the ViewersList for (int i = 1; i < 4; i++) { lbi = Flags.DbSelectorOpen.ViewersList.Items [i] as ListBoxItem; if (MainWindow.gv.ListBoxId [GridViewerArrayIndex] == ( Guid )lbi.Tag) { //lbi = Flags . DbSelectorOpen . ViewersList . Items [ i ] as ListBoxItem; Flags.DbSelectorOpen.ViewersList.Items.RemoveAt(i); Flags.DbSelectorOpen.ViewersList.Refresh( ); break; } } } else { // we have the ViewersList index given to us, so use it lbi = Flags.DbSelectorOpen.ViewersList.Items [index] as ListBoxItem; Flags.DbSelectorOpen.ViewersList.Items.RemoveAt(index); Flags.DbSelectorOpen.ViewersList.Refresh( ); // got to findit in thruMainWindow.gv[] array (Range is 0 - 3) for (int i = 0; i < 4; i++) { if (MainWindow.gv.ListBoxId [i] == ( Guid )lbi.Tag) { GridViewerArrayIndex = i; break; } } } sqlv = Flags.CurrentSqlViewer as SqlDbViewer; sqlv.Close( ); // We know which gv[] entry we need to clear, so do it and return MainWindow.gv.CurrentDb [GridViewerArrayIndex] = ""; MainWindow.gv.ListBoxId [GridViewerArrayIndex] = Guid.Empty; MainWindow.gv.Datagrid [GridViewerArrayIndex] = null; MainWindow.gv.window [GridViewerArrayIndex] = null; MainWindow.gv.PrettyDetails = ""; MainWindow.gv.SqlViewerGuid = Guid.Empty; MainWindow.gv.ViewerCount--; // Reposition selected viewer if we have one if (Flags.DbSelectorOpen.ViewersList.Items.Count > GridViewerArrayIndex + 1) { Flags.DbSelectorOpen.ViewersList.SelectedIndex = GridViewerArrayIndex + 1; Flags.DbSelectorOpen.ViewersList.SelectedItem = GridViewerArrayIndex + 1; } else if (Flags.DbSelectorOpen.ViewersList.Items.Count == GridViewerArrayIndex + 1) { Flags.DbSelectorOpen.ViewersList.SelectedIndex = GridViewerArrayIndex - 1; Flags.DbSelectorOpen.ViewersList.SelectedItem = GridViewerArrayIndex - 1; } return(true); } // Unreachable code ... // Now sort out the global gv[] flags for (int y = 1; y < Flags.DbSelectorOpen.ViewersList.Items.Count; y++) { // Get the Tag of eaxch Viewer in the list lbi = Flags.DbSelectorOpen.ViewersList.Items [y] as ListBoxItem; Guid lbtag = ( Guid )lbi.Tag; //See if it matches the one we are closing down if (( Guid )lbtag == ( Guid )tag) { //Yes, we have got a match, so go ahead and remove its gv[] entries first for (int z = 0; z < MainWindow.gv.MaxViewers; z++) { if (MainWindow.gv.ListBoxId [z] == lbtag) { MainWindow.gv.ViewerCount--; MainWindow.gv.CurrentDb [z] = ""; MainWindow.gv.ListBoxId [z] = Guid.Empty; MainWindow.gv.Datagrid [z] = null; MainWindow.gv.window [z] = null; break; } } MainWindow.gv.PrettyDetails = ""; //Finally we can remove this entry from ViewersList lbi = Flags.DbSelectorOpen.ViewersList.Items [y] as ListBoxItem; lbi.Content = ""; Flags.DbSelectorOpen.ViewersList.Items.RemoveAt(y); // Set selectedIndex pointer to current position in list int currentIndex = y - 1; if (y <= 1) // List is basically empty (No viewers in the list) { return(true); } if (Flags.DbSelectorOpen.ViewersList.Items.Count > currentIndex) { Flags.DbSelectorOpen.ViewersList.SelectedIndex = currentIndex; Flags.DbSelectorOpen.ViewersList.SelectedItem = currentIndex; } else if (Flags.DbSelectorOpen.ViewersList.Items.Count == currentIndex) { Flags.DbSelectorOpen.ViewersList.SelectedIndex = currentIndex - 1; Flags.DbSelectorOpen.ViewersList.SelectedItem = currentIndex - 1; } return(true); } } MainWindow.gv.SqlViewerGuid = Guid.Empty; return(false); }
public virtual ByteArrayBuffer BufferByAddress(DbSelector selector, int address, int length) { return(selector.Db(this).DecryptedBufferByAddress(address, length)); }
private Slot CommittedSlot(DbSelector selector, int id) { return(selector.Db(this).IdSystem().CommittedSlot(id)); }
public virtual int DatabaseIdentityID(DbSelector selector) { var db = selector.Db(this); var identity = db.Identity(); if (identity == null) { return 0; } return identity.GetID(selector.Transaction(this)); }
public virtual IStoredClass[] StoredClasses(DbSelector selector ) { var db = selector.Db(this); db.ShowInternalClasses(true); try { return db.ClassCollection().StoredClasses(); } finally { db.ShowInternalClasses(false); } }
public virtual ByteArrayBuffer BufferByAddress(DbSelector selector, int address, int length) { return selector.Db(this).DecryptedBufferByAddress(address, length); }
private Slot CommittedSlot(DbSelector selector, int id) { return selector.Db(this).IdSystem().CommittedSlot(id); }
public virtual ByteArrayBuffer BufferByID(DbSelector selector , int id) { var slot = CommittedSlot(selector, id); return BufferByAddress(selector, slot.Address(), slot.Length()); }