Ich versuche, eine Ausgabespalte zu berechnen, die die Differenz von zwei anderen Spalten in der Abfrageausgabe ist; Die erste Spalte ist ein Aggregat von Artikeln auf Lager, während die zweite Spalte ein Aggregat von Artikeln ist, die verwendet wurden. Die dritte Spalte sollte die Differenz der zwei Werte sein, so dass ich dann alle drei Spalten in einer Tabelle ausgeben kann.Stock Balance Aufrechterhaltung in Schienen Anwendung
Ich würde gerne den Restbestand nach dem Kauf und Verkauf in Schienen Weg wissen.
Unten finden Sie den Screenshot für die Referenz;
Für den Kauf Tisch,
stockings_controller.rb
class StockingsController < ApplicationController
before_action :set_stocking, only: [:show, :edit, :update, :destroy]
# GET /Stockings
# GET /deldetails.json
def index
@stockings = Stocking.all
end
def import
Stocking.import(params[:file])
redirect_to stockings_url, notice: "Stockings imported."
end
# GET /Stockings/1
# GET /Stockings/1.json
def show
end
# GET /Stockings/new
def new
@stocking = Stocking.new
end
# GET /stockings/1/edit
def edit
end
# POST /Stockings
# POST /Stockings.json
def create
@stocking = Stocking.new(stocking_params)
respond_to do |format|
if @stocking.save
format.html { redirect_to @stocking, notice: 'Stocking was successfully created.' }
format.json { render :show, status: :created, location: @stocking }
else
format.html { render :new }
format.json { render json: @stocking.errors, status: :unprocessable_entity }
end
end
end
# PATCH/PUT /Stockings/1
# PATCH/PUT /stockings/1.json
def update
respond_to do |format|
if @stocking.update(stocking_params)
format.html { redirect_to @stocking, notice: 'Stocking was successfully updated.' }
format.json { render :show, status: :ok, location: @stocking }
else
format.html { render :edit }
format.json { render json: @stocking.errors, status: :unprocessable_entity }
end
end
end
# DELETE /stockings/1
# DELETE /stockings/1.json
def destroy
@stocking.destroy
respond_to do |format|
format.html { redirect_to stockings_url, notice: 'Stocking was successfully destroyed.' }
format.json { head :no_content }
end
end
private
# Use callbacks to share common setup or constraints between actions.
def set_stocking
@stocking = Stocking.find(params[:id])
end
# Never trust parameters from the scary internet, only allow the white list through.
def stocking_params
params.require(:stocking).permit(:slno, :category, :articleno, :description, :color, :quantity, :rprice, :total, :cartonno)
end
end
stocking.rb
Klasse Stocking < Activerecord :: Base
def self.import(file)
CSV.foreach(file.path, headers: true) do |row|
Stocking.create! row.to_hash
end
end
Ende
index.html.erb
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="table-responsive myTable">
<table class="table listing text-center">
<tr class="tr-head">
<td>SLNO</td>
<td>CATEGORY</td>
<td>ARTICLE NO</td>
<td>DESCRIPTION</td>
<td>COLOR</td>
<td>QUANTITY</td>
<td>RETAIL PRICE</td>
<td>TOTAL</td>
<td>CARTON NO</td>
</tr>
<% @stockings.each do |stocking| %>
<tr class="tr-<%= cycle('odd', 'even') %>">
<td class="col-1">
<%= stocking.slno %>
</td><td class="col-1">
<%= stocking.articleno %>
</td><td class="col-1">
<%= stocking.category %>
</td><td class="col-1">
<%= stocking.description %>
</td><td class="col-1">
<%= stocking.color %>
</td><td class="col-1">
<%= stocking.quantity %>
</td><td class="col-1">
<%= stocking.rprice %>
</td><td class="col-1">
<%= stocking.total %>
</td><td class="col-1">
<%= stocking.cartonno %>
</td>
</tr>
<% end %>
</table>
</div>
</div>
</div>
<br>
<%= link_to 'New stocking', new_stocking_path %>
<!-- |=== HERE -->
<a href="#" class="toggle-form">...</a>
<div id="test">
<h2>Import StOCKS</h2>
<%= form_tag import_stockings_path, multipart: true do %>
<%= file_field_tag :file %>
<%= submit_tag "Import" %>
<% end %>
</div>
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$("div#test").hide();
// | === HERE
$("a.toggle-form").click(function(event) {
event.preventDefault();
$("div#test").toggle();
});
});
</script>
I, wie oben, den Kauf Tabelle vorbereitet habe, aber nicht in der Lage, die Idee des Umgangs mit Restbeständen zu bewältigen.
Ich bin in einer Verwirrung, die ich brauche, um das gleiche für Verkäufe usw. zu schaffen, oder wähle ich einen anderen Weg.
Alle Vorschläge sind sehr willkommen.
Vielen Dank im Voraus.
Können Sie Teile Ihres Codes teilen? Wir könnten Ihnen sagen, dass dies der richtige Weg ist, der nicht mit Ihrer aktuellen Implementierung in Einklang gebracht werden kann, und das würde zu mehr Verwirrung führen. – oreoluwa
Vielen Dank für Ihre schnelle Antwort. Ich habe einen Code gemäß Ihrer Anfrage eingefügt. Bitte überprüfen und führen. –