Копирование одной записи в другую с помощью светового переключателя
Кто-нибудь знает как это сделать. Я гуглил это, но это старое учебное видео на 2010 год и, похоже, не соответствует должным инструкциям, как это сделать. Я использую 2012 год. Я хотел бы добавить кнопку копирования, а затем нажать на запись, нажать кнопку "Копировать" и попросить добавить новую запись со значениями по умолчанию от выбранной вами.
1 ответ
В моем приложении я отслеживаю котировки продаж. У меня есть возможность вносить и сохранять ревизии цитат. Я делаю это, имея кнопку для создания новой ревизии, которая начинается с копирования предыдущей ревизии.
Вы не упомянули, какой язык вы используете. Я использую VB.NET, но большая часть кода очень простая вещь, просто объявления и присваивания, поэтому вы сможете очень легко перевести ее на C#. Заменить ключевое слово Me
от this
и ты большую часть пути туда.
Внутри моей кнопки _Execute()
код, я сначала делаю локальную копию записи для копирования:
'Create a quote object to hold the quote to be revised
Dim CurrentRev As Quote
CurrentRev = Me.qQuoteByFirm.SelectedItem
Затем я добавляю новую запись в базу данных:
'Add a new quote entity to the database
Me.qQuoteByFirm.AddNew()
И скопируйте соответствующую информацию:
'Copy the necessary relevant values to the new quote
Me.qQuoteByFirm.SelectedItem.QuoteNumber = CurrentRev.QuoteNumber
Me.qQuoteByFirm.SelectedItem.RepFirm = CurrentRev.RepFirm
Me.qQuoteByFirm.SelectedItem.Customer = CurrentRev.Customer
Me.qQuoteByFirm.SelectedItem.QuoteStatus = CurrentRev.QuoteStatus
Это создаст копию текущей выбранной записи, если каждое значение в записи является одним значением. Если значение имеет отношение к другой таблице и содержит несколько записей, вам нужно будет перебрать это значение.
Например, приведенное выше является лишь общей информацией для моей цитаты. У меня также есть отношение к таблице цитат. Каждая цитата имеет несколько позиций, и все они также должны быть скопированы. Поэтому мне нужно пройтись по каждой позиции и создать ее дубликат.
'Duplicate all associate quote line items
For Each item In CurrentRev.QuoteLines
Me.qLineItemsByQuoteID.AddNew()
Me.qLineItemsByQuoteID.SelectedItem.ItemNo = item.ItemNo
Me.qLineItemsByQuoteID.SelectedItem.ProductQty = item.ProductQty
Me.qLineItemsByQuoteID.SelectedItem.Description = item.Description
Me.qLineItemsByQuoteID.SelectedItem.SellPrice = item.SellPrice
Me.qLineItemsByQuoteID.SelectedItem.PartNo = item.PartNo
Next